spring boot 中maven多模块依赖配置文件共享问题,当我们在使用多模块是,可能需要配置一些参数,比如我们将与数据交互操作进行抽取形成了一个独立的模块,当其他模块需要依赖这个模块时,如果不做配置共享处理,那么在依赖模块中也需要和被依赖模块做相同的配置,这样显然非常麻烦而且不合理,我们希望做到同一套配置在依赖模块中也生效,无需重复做相同的配置
举例
数据库操作模块 : db --> 该模块中存在与数据相关的配置
web交互模块: web --> 该模块依赖db模块
这个时候如果不做共享处理, 那么在web中就需要与db中做相同的配置,显然麻烦并且不合理共享操作方式
在db pop.xml中配置
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.ftl</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
但是如上配置只是让maven在构建项目的时候将相应的配置文档放到的classes目录下,如果需要在依赖模块中application.properties中引用这些配置文件,
必须做相应的配置才可以
如:在依赖文件中做如下配置类,引入需要的配置文件,需要注意的时@Configuration注解必须存在,否则不生效
@Configuration
@PropertySource(value = "classpath:db.properties")
public class DbConfig {
}
那么这个时候就可以在依赖模块中使用db配置文件了
spring.profiles.include=db
spring.freemarker.suffix=.ftl