繁体   English   中英

多次调用 Java 服务类加载器

[英]Java Service Class loader called multiple times

我在一个多模块项目中创建了一个服务类加载器,同时还使用 Hibernate Integrator 来运行一些 DB 脚本,但我注意到该应用程序进入了我的 Integrator 类 5 次。

我实现了以下课程:

public class FlywayIntegrator implements Integrator {
    @Override
    public void integrate(Metadata metadata, SessionFactoryImplementor sessionFactory,
            SessionFactoryServiceRegistry serviceRegistry) {
        try {
            // some code
        } catch (Exception e) {
            logger.error("Log", e);
        }
    }
    
    @Override
    public void disintegrate(SessionFactoryImplementor sessionFactory, SessionFactoryServiceRegistry serviceRegistry) {
        // TODO Auto-generated method stub
    }
}

同样在文件 \\src\\main\\resources\\META-INF\\services\\org.hibernate.integrator.spi.Integrator 下,我添加了条目:

my.package.FlywayIntegrator

现在,当我的应用程序被部署时,我的类的“集成”方法被重复执行 5 次。 我不明白为什么它被触发了这么多次。 任何想法都会受到欢迎。

注意:我在 5 个不同的模块中有 5 个不同的 persistence.xml 文件,我不确定是否存在关系。 包含集成器的模块有自己的persistence.xml

对于包含持久性文件的每个模块,集成器被调用一次。 就我而言,我有 5 个模块,包含 5 个持久性文件。

暂无
暂无

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

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