目前,我们正在为更新的模块创建一个spring-boot项目。
我们使用的技术如下:
- Java 1.8
- Maven 3.5.2
- 弹簧引导: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