springboot 模块引用_SpringBoot加载子模块配置文件的方法

本文介绍了在SpringBoot多模块项目中遇到的子模块配置文件未加载问题及解决方案。通过修改配置文件名称,避免重名,并在主模块中指定加载特定配置,成功解决加载问题。同时,作者对当前SpringBoot教程的质量表达了关注。
摘要由CSDN通过智能技术生成

这两天开始学习SpringBoot框架,按照官方的文档,很轻易地就把单模块的项目启动了,但在使用maven搭建多模块的时候遇到了子模块配置文件没有加载的问题

项目架构是这样的

zero

|-ws

|-service

|-dao

|-entity

zero的依赖

org.springframework.boot

spring-boot-starter-web

ws的依赖和配置

cn.xmcui.zero

service

1.0-SNAPSHOT

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-maven-plugin

cn.xmcui.zero.Application

true

ZIP

repackage

ws的application.yml

server:

port: 80

servlet:

session:

timeout: 60

tomcat:

uri-encoding: utf-8

dao的依赖和配置

cn.xmcui.zero

entity

1.0-SNAPSHOT

org.mybatis.spring.boot

mybatis-spring-boot-starter

1.3.2

mysql

mysql-connector-java

5.1.47

application.yml

spring:

datasource:

url: jdbc:mysql://localhost:3306/zero?useUnicode=true&characterEncoding=utf-8&useSSL=false

username: root

password: root

driver-class-name: com.mysql.jdbc.Driver

mybatis:

mapper-locations: classpath:mapper/*.xml

type-aliases-package: cn.xmcui.zero.entity

给启动器类加注解

@SpringBootApplication(scanBasePackages = "cn.xmcui.zero")

@MapperScan(basePackages = "cn.xmcui.zero.mapper")

public class Application {

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

}

运行

然后是喜闻乐见的报错

***************************

APPLICATION FAILED TO START

***************************

Description:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class

Action:

Consider the following:

If you want an embedded database (H2, HSQL or Derby), please put it on the classpath.

If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).

没有找到数据库的配置文件

找错的过程很痛苦,找了很多资料,走了很多弯路,最后将dao层的application.yml全部剪切到ws的application.yml中,项目点亮,成功运行.这就明确到dao层的配置文件没有被加载.

然后找到了加载配置文件的方法:

我将ws层application.yml重命名为application-dev.yml;将dao层配置文件重命名为application-dao.yml(让配置文件不重名,需要注意,配置文件重命名后必须以application-做前缀);

在ws层再新建一个application.yml

spring:

profiles:

active: dao,dev

这条配置是指定加载哪些配置文件

操作完成,系统成功点亮

本来是很简单的问题,却浪费了我很长的时间,还有一件事情必须要吐槽一下,现在SpringBoot相关的博客质量真是良莠不齐,相当数量的人还是把它当SpringMvc用;使用它,却不用它的新特性,真的是毫无意义啊.

参考文献:

https://blog.csdn.net/cw_hello1/article/details/79639448

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值