Spring Boot YAML自动数据源配置问题-未获取数据源URL



目前,我们正在为更新的模块创建一个spring-boot项目。

我们使用的技术如下:

  1. Java 1.8
  2. Maven 3.5.2
  3. 弹簧引导:1.5.6.RELEASE(弹簧引导启动器父级(

公共类应用程序{

public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Autowired
private DataSource datasource;

}

application.properties

  • spring.datasource.url=jdbc:oracle:XXX:@XXX:XXX/XXX
  • spring.datasource.username=XXX
  • spring.datasource.password=XXX
  • spring.datasource.driver类名=oracle.jdbc.river.OracleDriver

application.yml

  • 弹簧:

    • 配置文件:
    • active:"dev">
    • main:

      -横幅模式:"关闭">

  • 弹簧:

    • 配置文件:dev
    • 数据源:
      • url:jdbc:oracle:XXX:@XXX:XXX/XXX
      • 用户名:XXX
      • 密码:XXX
      • 驱动程序类名:oracle.jdbc.river.OracleDriver

当我们将数据源信息添加为属性文件时,应用程序将按预期工作。但作为YAML的信息意味着显示以下错误。

错误

上下文初始化期间遇到异常-取消刷新尝试:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名为"testapplication"的bean时出错:通过字段"datasource"表示的不满足依赖项;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建类路径资源中定义的名称为"dataSource"的bean时出错[org/springframeter/boot/autoconfig/jdbc/DataSourceConfiguration$Tomcat.class]:通过工厂方法实例化bean失败;嵌套异常为org.springframework.beans.BeanInstanceException:未能实例化[org.apache.tomcat.jdbc.pool.DataSource]:工厂方法"DataSource"引发异常;嵌套异常为org.springframework.boot.autoconfig.jdbc.DataSourceProperties$DataSourceBeanCreationException:无法确定数据库类型NONE的嵌入式数据库驱动程序类。如果你想要一个嵌入式数据库,请在类路径上放一个受支持的数据库。如果要从特定配置文件加载数据库设置,则可能需要激活它(配置文件"dev"当前处于活动状态(

Yml标准要求我们在冒号(:(后面指定一个空格。请看一下文件把你的yml改成这样,它应该很好用。

spring:
profiles: dev
datasource:
url: jdbc:oracle:XXX:@XXX:XXX/XXX
username: XXX
password: XXX
driver-class-name: oracle.jdbc.driver.OracleDriver

最新更新