首页 > 解决方案 > BootstrapMode 如何在 LAZY 和 DEFERRED 模式下对 @EnableJpaRepositories 起作用?

问题描述

当我们将 BootstrapMode 设置为 DEFERRED 和 LAZY 时,想要了解内部真正发生了什么。

已通过此链接 https://docs.spring.io/spring-data/jpa/docs/current/reference/html/#jpa.bootstrap-mode

它说:

LAZY — 隐式声明所有存储库 bean 为惰性,并导致创建惰性初始化代理以注入客户端 bean。这意味着,如果客户端 bean 只是将实例存储在一个字段中并且在初始化期间不使用存储库,那么存储库将不会被实例化。存储库实例将在第一次与存储库交互时进行初始化和验证。

DEFERRED — 与 LAZY 基本相同的操作模式,但触发存储库初始化以响应 ContextRefreshedEvent,以便在应用程序完全启动之前验证存储库

有人可以用例子来解释这个引导程序,比如回购和实体内部真正发生的事情。

谢谢

标签: spring-bootspring-boot-jpa

解决方案


推荐阅读