これら 2 つの選択肢に違いはありますか? どちらも同じ意味で使用できますか?
(A) カスタム アノテーションを作成して、DAO 内で @PersistenceContext の代わりに @Inject を使用できるようにします。
(B) 次のコード サンプルのように、 @Named("yourName") を使用して Producer を修飾します。
public class Resources {
/**
* EntityManager's persistence context is defined here so the @Inject annotation may be used in referencing classes.
*/
@Produces
@Named("MyEm")
@PersistenceContext(unitName = "jboss.managed")
private EntityManager em;
}
@Stateless
public class FiletracksentHome {
..
@Inject
@Named("MyEm")
private EntityManager entityManager;
..
}