【问题标题】:How to minimize and speed up Spring Boot project for development enviroment?如何最小化和加速开发环境的 Spring Boot 项目?
【发布时间】:2018-12-14 00:07:31
【问题描述】:
我正在开发一个包含 500~ 个实体的 Spring Boot Rest 项目。但是由于 EntityManagerFactory 初始化,启动时间很慢(大约 3 分钟)。它有 5GB~ 内存分配。
使用配置文件我想打开我的项目的轻量级版本。我试图避免通过 EntityManagerFactory 映射一些实体。以及通过 ComponentScan 的相关 bean。
您有与此问题相关的解决方案吗?
例如,我想从 hibernate 和 spring boot 自动配置中隐藏一些包。
【问题讨论】:
标签:
spring
spring-boot
spring-data-jpa
entitymanager
spring-profiles
【解决方案1】:
如果类路径扫描需要很长时间,您可以将其缩小到特定包
@ComponentScan(basePackages = "com.your.project")
@EntityScan(basePackages = "com.your.project.model")
@EnableJpaRepositories(basePackages = "com.your.project.repository")
您还可以选择使用自定义ConnectionProvider 创建自定义EntityManagerFactory,如this answer 中所述。