我在项目中有2个芽。当第一个bundle开始时,第二个bundle使用它的服务。但是如何在捆绑服务中使用服务?
<service ref="EMUtilService" interface="domain.access.EMUtil"/>
<bean id="EMUtilService" class="domain.access.impl.EMUtilImpl" scope="singleton">
<jpa:context unitname="access" property="entityManager"/>
<tx:transaction method="*" value="RequiresNew"/>
</bean>
<service ref="userService" interface="domain.access.UserService"/>
<bean id="userService" class="domain.access.impl.UserServiceImpl" scope="singleton">
</bean>
我希望在EMUtilService
或其他简单类中使用userService
。
我的EMUtilService
public class EMUtilImpl implements EMUtil {
private EntityManager entityManager;
public void setEntityManager(EntityManager entityManager) {
this.entityManager = entityManager;
}
@Override
public EntityManager getEntityManager() {
return entityManager;
}
}
我要在此服务中初始化EntityManager
并在其他课程中使用它。
答案 0 :(得分:0)
蓝图很大程度上受到Spring(它是Spring DM的继承者)的启发,因此,它支持将bean /服务注入其他bean的相同语法。您可以在bean定义上放置一个id,并将此bean注入另一个bean的属性:
<bean id="mybean" class="my.package.MyClass"/>
<bean id="myService" class="my.package.MyService">
<property name="myProperty" ref="mybean"/>
</bean>