spring项目报错
Failed to configure a DataSource: 'url' attribute is not specified and no em
翻译一下就是没有找到数据库连接的设置,其实springboot报这个错误不仅仅是因为数据库配置文件的错误,有时候bean创建错误也会报这种错误,这时候需要让日志多打印出一些信息帮助我们定位。
如果不是其他原因的话可以使用以下几种办法。
方法一:
在application启动类上面的注解后面追加后面的内容,但是这个方法是忽略数据库的配置然后启动项目,但是如果后面需要读写数据库的时候就会出现某个bean无法加入到springfactory的错误信息。因此这个方法只适用于暂时需要进行项目测试时适用,治标不治本
@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
方法二:
检查application.properties或者application.yml文件
特别是yml文件,因为yml文件是有缩进要求的!如果你的application.yml文件是从别处复制而来的,可能没有保留原有的缩进格式
正确的yml文件是这样的
spring:
datasource: # 数据源的相关配置
type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP
driver-class-name: com.mysql.jdbc.Driver # mysql驱动
url: jdbc:mysql://localhost:3306/test-test?characterEncoding=UTF-8&useSSL=false&useUnicode=true&serverTimezone=UTC
username: root
password: root
如果你复制到项目中是这样的
spring:
datasource: # 数据源的相关配置
type: com.zaxxer.hikari.HikariDataSource # 数据源类型:HikariCP
driver-class-name: com.mysql.jdbc.Driver # mysql驱动
url: jdbc:mysql://localhost:3306/foodie-shop-dev?characterEncoding=UTF-8&useSSL=false&useUnicode=true&serverTimezone=UTC
username: root
password: 123456
这样的配置文件spring是无法读取的!