目前,我们正在为较新的模块创建一个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:创建类路径资源 [org / springframework / boot / autoconfigure / jdbc / DataSourceConfiguration $ Tomcat.class]中定义的名称为“dataSource”的bean时出错:通过工厂方法实例化Bean失败嵌套的异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.apache.tomcat.jdbc.pool.DataSource]:工厂方法'dataSource'引发了异常;嵌套的异常是org.springframework.boot.autoconfigure.jdbc.DataSourceProperties $ DataSourceBeanCreationException:无法确定数据库类型NONE的嵌入式数据库驱动程序类。如果您想要一个嵌入式数据库,请在类路径上放置一个受支持的数据库。如果您有要从特定概要文件加载的数据库设置,则可能需要激活它(概要文件“dev”当前处于 Activity 状态)。
最佳答案
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
关于java - Spring Boot YAML自动数据源配置问题-未获取数据源URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51627473/