当前,我们正在为较新的模块创建一个spring boot项目。
技术我们已经使用如下:
公共类申请{
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Autowired
private DataSource datasource;
}
application.properties
application.yml
春天:
春天:
当我们将数据源信息添加为属性文件时,应用程序将按预期运行。但是作为YAML的信息意味着显示以下错误。
错误
上下文初始化期间遇到的异常-取消刷新尝试:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名称为'testapplication'的bean时出错:通过字段'datasource'表示的不满足的依赖关系;嵌套的异常是org.springframework.beans.factory.BeanCreationException:创建在类路径资源中定义名称为“ dataSource”的bean时出错 [org / springframework / boot / autoconfigure / jdbc / DataSourceConfiguration $ Tomcat.class]:Bean实例化通过工厂方法失败;嵌套的异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.apache.tomcat.jdbc.pool.DataSource]:工厂方法'dataSource'引发了异常;嵌套的异常是org.springframework.boot.autoconfigure.jdbc.DataSourceProperties $ DataSourceBeanCreationException:无法确定数据库类型为NONE的嵌入式数据库驱动程序类。如果您想要嵌入式数据库,请在类路径上放置一个受支持的数据库。如果您要从特定配置文件加载数据库设置,则可能需要激活它(配置文件“ dev”当前处于活动状态)。
答案 0 :(得分:1)
Yml标准要求我们在冒号(:
)后指定一个空格。请看看documentation
像这样更改您的yml,它应该可以正常工作。
spring:
profiles: dev
datasource:
url: jdbc:oracle:XXX:@XXX:XXX/XXX
username: XXX
password: XXX
driver-class-name: oracle.jdbc.driver.OracleDriver