Spring Boot应用为何加载PostgreSQL数据库配置而非MySQL?
PostgreSQL配置的来源排查方向
- 检查项目资源目录(
src/main/resources或src/main/resources/META-INF)下是否存在hibernate.properties文件,里面可能硬编码了PostgreSQL的连接配置——Hibernate会优先加载这个本地文件的配置,覆盖你自定义DBConfig的设置。 - 排查依赖库:通过Maven的
mvn dependency:tree或Gradle的gradle dependencies命令查看依赖树,确认是否有第三方依赖自带了hibernate.properties文件,打包时被引入项目导致Hibernate加载了外部配置。 - 验证自定义DBConfig的有效性:确认配置类添加了
@Configuration注解,且被Spring扫描到;同时检查是否给数据源Bean添加了@Primary注解,确保它成为Spring优先使用的数据源,避免默认配置生效。 - 检查系统环境变量或JVM启动参数:查看是否设置了
hibernate.connection.url这类Hibernate连接参数,环境变量或JVM参数的优先级高于代码配置,会覆盖你的设置。 - 核对IDE运行配置:有些IDE的启动配置里可能额外添加了VM选项,配置了PostgreSQL的连接参数,启动时会加载这些配置。
内容的提问来源于stack exchange,提问作者John_Doe
相关产品推荐
相关产品推荐

