基于STS的JPA/REST全栈应用打包WAR后数据库通信异常咨询
问题分析与解决
你的settings.gradle里的includeFlat 'JPACompleteAg'只是把JPA模块纳入了多项目构建结构,但不会自动将JPA模块的代码打包进REST模块生成的.war文件——因为REST模块并没有声明对JPA模块的依赖,这就是部署后无法连接数据库的核心原因。
解决步骤
- 添加模块依赖
在REST模块的build.gradle文件中,添加对JPA模块的依赖声明:dependencies { // 引入JPA模块作为依赖 implementation project(':JPACompleteAg') } - 重新打包war
回到STS中重新构建REST模块生成.war文件,此时JPA模块的实体类、DAO层代码、数据库配置相关内容都会被打包进这个war里。 - 验证配置
确保REST模块(或被依赖的JPA模块)中包含正确的MySQL数据库连接配置(比如application.properties里的spring.datasource.url、username、password等参数),避免因配置缺失导致连接失败。
额外说明
不需要为JPA模块单独创建.war文件,因为JPA模块是后端业务依赖模块,并非独立运行的Web应用,它应该作为依赖被整合到REST模块的war中,一起部署运行。
内容的提问来源于stack exchange,提问作者TheNateTrain
相关产品推荐
相关产品推荐

