Qual è la differenza tra@Autowired vs @PersistenceContext per EntityManager fagioli
@Autowired
private EntityManager em;
e
@PersitenceContext
private EntityManager em;
Entrambe le opzioni funzionano nella mia domanda, ma posso rompere qualcosa utilizzando l'annotazione @Autowired?
Lo so, ma qual è l'impatto nell'applicazione? Prendi in considerazione l'utilizzo dello standard ** @ Transactional ** da Spring. Quando si utilizza ** @ Autowired **, si verificherà lo stesso comportamento dell'utilizzo di ** @ PersistenceContext ** e la transazione em per applicazione? –
Credo che in genere sia consigliabile utilizzare '@ PersistenceContext' perché descrive più da vicino il tipo di dipendenza da iniezione che si sta tentando di ottenere. Inoltre, fornisce parametri opzionali specifici per l'uso di un EntityManager, questo può essere utile quando si dispone di più di un EntityManager. Funzionalmente credo che si possa ottenere la stessa iniezione con '@ Autowired ', ma vorrei ricorrere all'utilizzo dell'annotazione progettata per essere utilizzata in questo modo. – Alex
Questo http://blog.jhades.org/how-does-spring-transactional-really-work/ lo spiega meglio di me. – Alex