spring boot多个模块如何继承application.properties

2023-11-27

我使用 Spring Boot 多个模块,我想从 Parent 继承 application.properties 。我有父模块:spring-ecommere-demo 和子模块:模型、核心和安全性。在父模块中,我放置了一些 jdbc 配置,如下所示:

应用程序属性(父模块)

spring.datasource.url=jdbc:mysql://localhost:3306/BaoTrung
spring.datasource.username=root
spring.datasource.password=123456
spring.jpa.show-sql=true

在子模块安全性中,我的具体配置如下所示:

应用程序安全性.properties(安全模块)

app.jwtSecret= JWTSuperSecretKey
app.jwtExpirationInMs = 604800000

安全模块中 Spring Boot 应用程序的配置如下所示:

@SpringBootApplication(scanBasePackages = "springecommeredemo")
@PropertySources({
        @PropertySource("application-security.properties")
})

但是当我运行它时,它抛出异常

描述:

无法配置数据源:未指定“url”属性并且 无法配置嵌入式数据源。

原因:未能确定合适的驱动程序类

Action:

请考虑以下事项: 如果您想要嵌入式数据库(H2、HSQL 或 Derby),请将其放在类路径中。如果您有数据库设置 要从特定配置文件加载,您可能需要激活它 (配置文件开发当前处于活动状态)。

这意味着子模块安全性无法从父项目继承属性。如何从父模块继承所有属性。因为我使用相同的数据库,所以我不想在我的项目中配置重复的 jdbc。我想继承共同的属性。请帮忙


您需要添加多个Properties可以在Spring中访问,我添加了重复的注释@PropertySource从以前开始Java 8如果您需要使用同一注释的多个实例,则必须将它们包装在容器注释中。和Java 8,这不再是必要的,从而允许更清晰、更易读的代码。

@SpringBootApplication(scanBasePackages = "springecommeredemo")
@PropertySource("application.properties")
@PropertySource("application-security.properties")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

spring boot多个模块如何继承application.properties 的相关文章

随机推荐