gpt4 book ai didi

java - 如何使用@Inject 注释在Java 中堆叠自定义注释

转载 作者:行者123 更新时间:2023-11-30 05:55:00 25 4
gpt4 key购买 nike

我在浏览时多次看到这个..人们正在使用 @Inject 注释和他们自己的注释来注入(inject) EntityManager 像这样:

@Inject @MyEm EnityManager em;  

因为您不能只注入(inject) EntityManager。您只能使用 @PersistenceContext 来完成。有谁知道如何使这项工作(使用自定义注释),因为我没有在网上找到任何信息?如果可以,请举个例子。

最佳答案

基本上您需要做的是创建一个鉴别器注释并将其与生产者结合使用。这允许您在 Java EE 应用程序中的其他 bean 中简单地 @Inject 您的实体管理器。这是一个例子:

@Qualifier
@Retention(RUNTIME)
@Target(METHOD, FIELD, PARAMETER, TYPE)
public interface @MyEm {
}

public class EntityProducer {
@PersistenceContext(unitName = 'MyPU', type = PersistenceContextType.EXTENDED)
private EntityManager entityManager;

@Produces
@MyEm
public EntityManager getEntityManager() {
return entityManager;
}
}

public class MyDAO {
@Inject
@MyEm
private EntityManager entityManager;
}

关于java - 如何使用@Inject 注释在Java 中堆叠自定义注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8770465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com