java连接ORACLE的方法(DBUTIL类编写)

java连接ORACLE的方法(DBUTIL类编写)

java连接数据库的工具类:DBUTIL

编写流程如下:


1.配置驱动包
(可以查看我的这篇博客:https://blog.csdn.net/qq_28198181/article/details/82499089

2.可以在包下创建一个DBUTILl类:
DBUTIL类

3.打开DBUTIL配置相应的属性

   private static String driver = "oracle.jdbc.driver.OracleDriver"; //driver驱动名字
   private String url = "jdbc:oracle:thin:@host:port:SID";//连接的url,
   private String user = "name";// oracle数据库的用户名  
   private String pwd = "pwd";// oracle数据库的用户密码
   private PreparedStatement sta = null; //执行查询语句的类
   private ResultSet rs = null;   //执行查询语句后返回的结果的类
   private Connection conn = null;//连接类

host:ip地址,port:端口,SID 配置的sid名称(也可能是数据库名称),注意使用 : 隔开

比如我的如下:

数据库属性配置

4.写静态块加载驱动

   //加载驱动
        static {
            try {
                Class.forName(driver);   //dirver就是前面配置的driver名称
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
也可以不写静态块 不过是用静态块 可以让类启动的时候加载出来

我的如下:
驱动加载

4.获得链接
目的是为了连接到数据库 得到一个连接的实体

  /**
  * @return 连接对象
 */
public Connection getConn() {
    try {
        conn = DriverManager.getConnection(url, user, pwd);  //输入url  用户  密码 

    } catch (SQLException e) {
        e.printStackTrace();
    }
    return conn;
}

断开连接
目的是用完了数据库 断开连接 避免连接占用资源

/**
 * 关闭资源
 */
public void close() {
    try {
        if (rs != null) {
            rs.close();
        }
    } catch (SQLException e) {
        e.printStackTrace();
    } finally {
        try {
            if (sta != null) {
                sta.close();
            }
        } catch (SQLException e2) {
            e2.printStackTrace();
        } finally {
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

这样就把一个建议的DBUTIL编写好了


可以写一个测试类:

一个查询名字的测试类:

public class ConnectionTest {

public static void main(String[] args) {

    Connection connection = new DBUtil().getConn();  //连接数据库
    String sql = "SElECT TNAME"    //sql语句   
                +" FROM V1_USER"   // FROM 打了空格 避免与参数连接起来了
                +" WHERE USERNAME like ? "; //WHERE前打了空格,道理同上


    try {

      PreparedStatement preparedStatement= connection.prepareStatement(sql);  //把sql语句放进去
        preparedStatement.setString(1,"liulu"); //设置参数
        ResultSet set = preparedStatement.executeQuery();  //执行sql
        if (set.next()){    //判断是否有值
            System.out.println("名字:"+set.getString(1));  //取出值
        }
    }catch (Exception e){
        e.printStackTrace();
    }finally{
    connection.close();  // 关闭连接
    }
}

}
得到的答案:

测试类查到的答案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值