如何在启动应用程序时懒惰地加载存储库?

时间:2017-09-18 10:58:26

标签: java spring-mvc spring-boot spring-data-jpa

在开发过程中,课程数量增加后,申请开始需要2分钟。我认为这会使我们的开发效率降低......

我发现如果我们添加' lazyInit = true',如果我添加此选项,大多数类将被懒惰加载,但即使我添加此选项也会加载存储库。

@ComponentScan(basePackageClasses = LazyApplication.class,lazyInit=true)
@EnableAutoConfiguration(
)
public class LazyApplication {

    public static void main(String[] args) {
        SpringApplication.run(LazyApplication.class, args);
    }
}

实际上,我们的系统有超过300个存储库和实体,所以我想尽可能使存储库变得懒惰。

如何创建我的存储库 我在启动应用程序时没有加载,但是在我第一次访问存储库时加载了它?

1 个答案:

答案 0 :(得分:1)

您可以在配置类上使用@Order注释来定义加载顺序。最高优先级建议首先运行。数字越低,优先级越高。 e.g

@Component
@Order(2)
public class MyRepo {
    public String getName() {
        return "some value";
    }
}