首先,我是Spring Boot的新手,所以也许我缺少一些简单的东西。
我有一个依赖于Spring Boot的小的Spring Batch过程。默认情况下,它使用嵌入式 H2 数据库。我希望它使用预言机数据库。所以我在应用程序属性文件中设置了 url/用户名/密码
spring.datasource.url=jdbc:oracle:thin:@host:1521:batch
spring.datasource.username=username
spring.datasource.password=reallyCoolPassword
并将依赖添加到我的 Maven pom
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>${oracle.client.version}</version>
</dependency>
我仍然得到嵌入式数据库。我能够使其工作的唯一方法是向连接池添加依赖项(例如 tomcat)。
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
</dependency>
我错过了什么吗?我预计Spring Boot已经对tomcat有依赖关系,它会引入。 如果需要,允许我用 dbcp 或其他东西覆盖。
希望有人能告诉我我做错了什么,或者帮助我理顺思路。
除了为 DB 提供 url、名称和密码外,您还需要添加spring.datasource.driverClassName
。
我们使用 mysql 作为存储,并将其添加到属性中:
spring.datasource.driverClassName: com.mysql.jdbc.Driver
这里也是使用 oracle db 的春季批处理属性的链接。
此外,由于许可证限制,您需要将驱动程序添加到项目和 oracle 没有公共 maven 存储库,因此您需要安装驱动程序。这是与演练的有用链接。