Spring 引导:我是否必须为 Oracle 连接添加 jdbc 池依赖项



首先,我是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 存储库,因此您需要安装驱动程序。这是与演练的有用链接。

最新更新