繁体   English   中英

如何在同一个包(模块)中的另一服务中使用服务?

[英]How can I use services in another service inside one and the same bundle(module)?

我在项目中有2位好友。 当第一个捆绑包启动时,使用第二个捆绑包中的服务。 但是如何在包内的服务中使用服务?

<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>

我想在userService或其他简单类中使用EMUtilService

我的EMUtilService

public class EMUtilImpl implements EMUtil {
    private EntityManager entityManager;

    public void setEntityManager(EntityManager entityManager) {
        this.entityManager = entityManager;
    }

    @Override
    public EntityManager getEntityManager() {
        return entityManager;
    }
}

我需要在此服务中初始化EntityManager并在其他类中使用它。

蓝图很大程度上受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>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM