org.springframework.transaction.annotation.Transactional vs javax.jdo.annotations.Transactional
Domanda
Quando si utilizza la primavera @Transcational
sul livello di servizio, ho bisogno di mettere <annotation driven>
su file XML.
Mi piacerebbe sapere
-
Può essere utilizzato su
javax.jdo.annotations.Transactional
livello di servizio, proprio come la primavera fa? Senza bisogno di configurare i file XML. etc? -
Può essere utilizzato su
javax.jdo.annotations.Transactional
livello di servizio indipendentemente dal fatto che io uso Hibernate / JPA / JDO a livello dao? Ho bisogno di configurare tutte le altre cose accanto a metodi di marcatura con@Transactional
? -
Ci sono differenze / limitazioni tra
javax.jdo.annotations.Transactional
eorg.springframework.transaction.annotation.Transactional
?
Soluzione
Hai guardato al javadoc? Questo è quello che ho letto su javax.jdo.annotations.Transactional
:
annotazione per indicare che un membro (campo o proprietà) è transazionale ma non persistente. Ciò corrisponde a XML attribuire persistenza modificatore = "transazionale" di "campo" ed elementi "proprietà".
Questo non sembra paragonabile con il @Transactional
annotazioni a partire dalla primavera.
descrive gli attributi di transazione su un metodo o di classe.
Questo tipo di annotazione è generalmente direttamente paragonabili a molla di Classe RuleBasedTransactionAttribute, e infatti AnnotationTransactionAttributeSource permette di convertire direttamente i dati al Quest'ultima classe, in modo che la primavera di Codice supporto delle transazioni non ha di conoscere le annotazioni. Se nessuna regola sono rilevanti per l'eccezione, lo farà essere trattati come DefaultTransactionAttribute (rolling torna sulle eccezioni di runtime).
Quindi, per rispondere alle vostre domande:
Si può sapere può essere utilizzato su
javax.jdo.annotations.Transactional
livello di servizio, proprio come la primavera fa? non è necessario configurare i file XML. etc?
No.
può essere utilizzato su
javax.jdo.annotations.Transactional
livello di servizio indipendente dal fatto che i utilizzando hibernate / JPA / JDO a livello dao? necessario configurare tutte le altre cose accanto a metodi di marcatura con@Transactional
?
No. Vedi sopra.
diverso / limitazione tra
javax.jdo.annotations.Transactional
eorg.springframework.transaction.annotation.Transactional
?
Sì. Uno è una mela, l'altro un'arancia.