文章目录

  • 准备工作
      • 1. 新建maven
      • 2. 添加jar包
      • 3. 新建包以及类
      • 4. 导入依赖
  • 建立连接
  • query
  • delete
  • update
  • insert

准备工作

1. 新建maven


这里groupId类似公司的id,artifactid是你项目的id

2. 添加jar包

project structure->libraries->添加下载好的ojdbc.jar

注意,即使在maven依赖中添加了ojdbc,也不会自动下载jar的。所以需要手动下载。
所以在这里没有添加依赖,而是直接添加的jar包
下载网址:https://www.oracle/database/technologies/appdev/jdbc-downloads.html

3. 新建包以及类


4. 导入依赖

在以下运行中出现:

原因是字符集不匹配。
所以我们提前解决这个问题,以助于我们专心写oracle与java 的连接。
先在pom.xml添加依赖如下
https://mvnrepository/artifact/cn.easyproject/orai18n/12.1.0.2.0


建立连接

新建Conn

package com.oracleDemo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Conn {
    static String driverClass="oracle.jdbc.driver.OracleDriver"; //oracle的驱动
    static String url="jdbc:oracle:thin:@localhost:1521:orcl";// port sid
    static String user="A201805550101";   //user是数据库的用户名
    static String password="123456";  //用户登录密码

    public static Connection getconn() {
        Connection conn=null;
        try {
            //首先建立驱动
            Class.forName("oracle.jdbc.driver.OracleDriver");//反射
            //驱动成功后进行连接
            conn=DriverManager.getConnection(url, user, password);

            System.out.println("连接成功");
        } catch (SQLException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return conn; //返回一个连接
    }
}

query

package com.oracleDemo;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Query {
    public static void main(String[] args) {
        Connection conn=null;
        Statement st=null;
        ResultSet rs=null;
        try {
            //1、获取连接对象
            conn=Conn.getconn();
            //2、创建statement类对象,用来执行SQL语句
            st=conn.createStatement();
            //3、创建sql查询语句
            String sql="select *from EMP";
            //4、执行sql语句并且换回一个查询的结果集
            rs=st.executeQuery(sql);
            while(rs.next()) {  //循环遍历结果集
                int id=rs.getInt("EMPNO");
                String name=rs.getString("ENAME");
                String job=rs.getString("JOB");
                System.out.println("我是"+name+",编号"+id+",职位是"+job);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

运行query

delete

package com.oracleDemo;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
public class Delete {
    public static void main(String[] args) {
        Connection conn=null;
        Statement st=null;
        conn=Conn.getconn();
        try {
            st=conn.createStatement();
            String sql="delete from emp where ename='曹操'";//删除叫曹操的员工
            int result=st.executeUpdate(sql);
            //如果返回的结果大于0则操作成功
            if(result>0) {
                System.out.println("删除成功");
            }
            else{
                System.out.println("删除失败");
            }

        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

update

package com.oracleDemo;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
public class Update {
    public static void main(String[] args) {
        Connection conn=null;
        Statement st=null;
        conn=Conn.getconn();
        try {
            st=conn.createStatement();
            String sql="update emp set job='manager' where ename='孙权'";
            int result=st.executeUpdate(sql);
            if(result>0)
                System.out.println("更改成功");
            else
                System.out.println("更改失败");
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

给孙权权力

运行后,

insert

package com.oracleDemo;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;

public class Insert {
    public static void main(String[] args) {
        Connection conn=null;
        Statement st=null;
        conn=Conn.getconn();
        try {
            st=conn.createStatement();
            String sql="insert into emp(empno,ename,job) values(9999,'alibab','manager')";
            int result=st.executeUpdate(sql);
            if(result>0)
                System.out.println("更改成功");
            else
                System.out.println("更改失败");
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}


参考自:
https://blog.csdn/he__xu/article/details/83410966

更多推荐

java 连接oracle数据库(最简单的使用)