博客园 首页 私信博主 显示目录 隐藏目录 管理 动画

jdbc 链接 oracle 查询

Oracle 默认端口号为 : 1521

String url="jdbc:oracle:thin:@localhost:1521:orcl";

报错1:ClassNotFoundException: oracle.jdbc.driver.OracleDriver:

缺少pom依赖:

<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>12.1.0.1-atlassian-hosted</version>
<scope>compile</scope>
</dependency>


<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.4.0-atlassian-hosted</version>
</dependency>

报错2:Cannot resolve com.oracle.ojdbc:ojdbc6:11.2.0.1.0:

因为 oracle 的 ojdbc.jar 是收费的,所以 maven 的中央仓库中没有这个资源

只能通过配置 本地库 才能加载到项目中去。

转到 : $ORACLE_HOME\product\11.2.0\dbhouses_1\jdbc\lib

把这个 jar 包 放在一个指定路径:

C:\maven\repositories\com\oracle\ojdbc6\11.2.0.1.0

打开cmd,执行安装命令

mvn install:install-file -Dfile=/C:/maven/repositories/com/oracle/ojdbc6/11.2.0.1.0/ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.1.0 -Dpackaging=jar -DgeneratePom=true

命令参数是什么:
install:可以将 项目本身 编译并打包 到本地仓库
install-file:安装文件
-Dfile=/C:/maven/repositories/com/oracle/ojdbc6/11.2.0.1.0/ojdbc6.jar  : 指定要打的包的文件位置
-DgroupId=com.oracle : 指定当前包的 groupIdcom.oracle
-DartifactId=ojdbc6 : 指定当前的 artifactfactIdojdbc6
-Dversion=11.2.0.1.0 : 指定当前包的 version11.2.0.1.0
-DgeneratePom=true:是否生成 pom 文件

根据 mvn 安装 info 找到位置 C:\Users\123456\.m2\repository\com\oracle\ojdbc6\11.2.0.1.0

找到需要的 install-file:  jar包 和 pom文件,

将它们三个文件放在你 IDEA 自定义的 maven 本地仓库 路径 :C:\maven\repositories\com\oracle\ojdbc6\11.2.0.1.0

 

 

 maven 项目 添加 pom 依赖:

<dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>11.2.0.1.0</version>
        <scope>runtime</scope>
</dependency>

原文链接:https://blog.csdn.net/weixin_45767596/article/details/122091544

 运行代码:

package com.yongying.test;
import java.sql.*;
public class OracleUtil {
    public static Connection getConnection(){
        Connection conn=null;
        try {
            String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
            String user="SYSTEM";
            String password="nbcb1111";

            Class.forName("oracle.jdbc.driver.OracleDriver");//加载数据驱动
            conn = DriverManager.getConnection(url, user, password);// 连接数据库

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("加载数据库驱动失败");
        }catch(Exception e){
            e.printStackTrace();
            System.out.println("连接数据库失败");
        }
        return conn;
    }
    public static void close(Connection conn, PreparedStatement ps, ResultSet rs){
        try {
            if(rs!=null){
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            if(ps!=null){
                ps.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            if(conn!=null){
                conn.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");//加载数据驱动
            Connection connection = getConnection();
            PreparedStatement preparedStatement = connection.prepareStatement("select * from student");
            ResultSet resultSet = preparedStatement.executeQuery();
            while (resultSet.next()){
                String sno = resultSet.getString(1);
                String sname = resultSet.getString(2);
                String sage = resultSet.getString(3);
                String ssex = resultSet.getString(4);
                System.out.println(sno+' '+sname+' '+sage+' '+ssex);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

 

posted @ 2023-03-11 18:21  CHANG_09  阅读(161)  评论(0编辑  收藏  举报