Spring JDBC 无法加载 JDBC 驱动程序类 [oracle.jdbc.driver.OracleDriver]

问题描述 投票:0回答:10

我想知道是否有人可以帮助我解决这个问题。我在尝试使用 Spring JDBC 编写代码时遇到了问题。当我运行服务器时,我收到了标题中提到的消息。我google了一下,有人说你应该导入ojdbc.jar。不过我已经导入了。这是我的代码:

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
    <property name="url" value="jdbc:oracle:thin:@192.168.0.13:1521/orcl" />
    <property name="username" value="Hibernate" />
    <property name="password" value="123456" />
    </bean>

</beans>

如果我做错了什么,请提出建议。非常感谢。

spring oracle spring-jdbc
10个回答
11
投票

确保您已将 ojdbc.jar 添加到您的类路径中。如果需要,您还可以通过打开 .classpath 文件并查找 ojdbc.jar 条目来仔细检查它。如果您没有,请从 Maven 存储库下载它,如下所述:

        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc6</artifactId>
            <version>11.2.0.3</version>
        </dependency>
.......

    <repositories>
        <repository>
            <id>codelds</id>
            <url>https://code.lds.org/nexus/content/groups/main-repo</url>
        </repository>
    </repositories>

6
投票

这里

下载ojdbc jar

ojdb6.jar
放入项目中的某个文件夹中(让我们使用 lib)。

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc</artifactId>
    <version>11.2.0</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/ojdbc6.jar</systemPath>
</dependency>

然后做:

mvn install:install-file \
-Dfile=path/to/ojdbc6.jar \
-DgroupId=com.oracle \
-DartifactId=ojdbc6 \
-Dversion=11.2.0 \
-Dpackaging=jars

3
投票

我只是把ojdbc6.jar放在apache tom cat安装目录的lib目录下

D:\TOOLS pache tomcat 服务器\Tomcat 8.0\lib

它解决了我的问题。


2
投票

如果您使用 Maven 作为构建工具,请添加以下依赖项。确保您拥有与数据库版本对应的正确版本的 ojdbcXX.jar 文件。对我来说,我有一个 Oracle 11g 数据库,因此我使用 ojdbc6.jar。

步骤1)添加依赖

<dependency>
   <groupId>com.oracle</groupId>
   <artifactId>ojdbc</artifactId>
   <version>6</version>
   <scope>system</scope>
   <systemPath>C:\Users\AkhileshPC\Downloads\ojdbc6.jar</systemPath>
</dependency>

步骤 2) 在 Maven 本地存储库中安装 ojdbcXX.jar。

Command > mvn install:install-file "-Dfile =Downloads\ojdbc6.jar" "-DgroupId=com.oracle" "-DartifactId=ojdbc6" "-Dversion=11.2.0.1" "-Dpackaging=jar"

设置maven本地仓库镜像

第3步)确保您的ojdbcXX.jar文件位于.metadata文件夹中相应项目的WEB-INF\lib文件夹中。

我的案例:

C:\Users\AkhileshPC\JavaSpring\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\1007_Spring_Mvc_App_Crud\WEB-INF\lib

web-inf 文件夹路径 图片

完成所有这三个步骤后,问题应该得到解决。


1
投票

就我而言,问题是将范围设置为

runtime

<dependency>
    <groupId>com.microsoft.sqlserver</groupId>
    <artifactId>mssql-jdbc</artifactId>
    <version>7.0.0.jre8</version>
    <scope>runtime</scope>
</dependency>

1
投票

只需将 ojdbc6.jar 复制到 tomcat/lib 文件夹中,如下图所示。 示例 tomcat/lib/


0
投票

尝试

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
    <property name="url" value="jdbc:oracle:thin:schema_name/[email protected]:1521:orcl" />
    <property name="username" value="Hibernate" />
    <property name="password" value="123456" />
    </bean>

</beans>

如果您使用 Spring Boot 2(我使用的是 Spring Boot 2.0.4.RELEASE,Oracle 数据库 12c),

application.properties

spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:schema_name/[email protected]:1521:xe
spring.datasource.username=Hibernate
spring.datasource.password=123456

(类路径中必须有

ojdbc7.jar


0
投票

我在 InteliJ 中解决了这个问题:

文件 -> 项目结构 -> 库 -> 单击“+”(添加新) -> 指向文件系统下的 ojdbc.jar 路径(之前手动下载或使用某些构建工具)


0
投票

我尝试使用idea将ojdbc添加到lib,但它无效。

我的最终解决方案是将ojdbc.jar添加到tomcat lib目录然后重新启动它。

没有致命错误


0
投票

在 tomcat lib 文件夹中添加了 jdbc.jar,所以它对我有用!

© www.soinside.com 2019 - 2024. All rights reserved.