JDBC几种连接方式

package  pkg;

import  java.sql. * ;

public   class  DBConn  {

    Connection con 
= null;

    
public DBConn() {
        
try {
            Class.forName(
"oracle.jdbc.driver.OracleDriver");
            
// 修公路
            con = DriverManager
                    .getConnection(
"jdbc:oracle:thin:@172.16.9.60:1521:blue",
                            
"scott""tiger");

        }
 catch (SQLException ex) {
            System.out.println(
"Connection error");
        }
 catch (Exception e) {
            e.printStackTrace();
        }

    }


    
/*
     * create proc add_pro @cs1 int, @cs2 int, @cs3 int output as set @cs3 =
     * @cs1 + @cs2
     
*/

    
public void f1() throws Exception {
        
// 创建调用存储过程的载体(造高档车)
        CallableStatement cs = con.prepareCall("{call add_pro(?,?,?)}");

        
// 为输入参数赋值,注意下标从1开始
        cs.setInt(133);
        cs.setInt(
255);

        
// 声明注册输出参数
        cs.registerOutParameter(3, Types.INTEGER);

        
// 执行存储过程
        cs.execute();

        
// 获取输出参数
        int rs = cs.getInt(3);

        
// 处理结果
        System.out.println("存储过程执行结果:" + rs);

        
// 释放数据库资源
        cs.close();

    }


    
/*
     * create proc select_pro as select * from titles select * from sales
     
*/

    
public void f2() throws Exception // 创建调用存储过程的载体(造高档车)
        CallableStatement cs = con.prepareCall("{call select_pro}");

        
// 执行存储过程
        cs.execute();

        
// 获取存储过程返回的结果集(第一个)
        ResultSet rs = cs.getResultSet();
        System.out.println(
"第一个结果集中第一列的值为:");
        
while (rs.next()) {
            
// 实际工作中需要修改,做具体业务要求
            System.out.println(rs.getString(1));
        }


        
// 获取存储过程返回的结果集(第一个以后)
        while (cs.getMoreResults()) {
            System.out.println(
"第一个以后结果集中第一列的值为:");
            ResultSet tmp 
= cs.getResultSet();
            
while (tmp.next()) {
                
// 实际工作中需要修改,做具体业务要求
                System.out.println(tmp.getString(1));
            }

        }


        
// 释放数据库资源
        cs.close();

    }


    
public void f3() throws Exception {
        
// 创建可输入参数的SQL语句载体(造中档车)
        PreparedStatement ps = con
                .prepareStatement(
"select * from titles where title_id=?");

        
// 为参数赋值,注意下标从1开始
        ps.setString(1"TC7777");

        
// 执行SQL语句,接收执行结果(运输)
        ResultSet rs = ps.executeQuery();

        
// 处理结果
        while (rs.next()) {
            System.out.println(
"书籍编号:" + rs.getString("title_id"));
            System.out.println(
"书籍标题:" + rs.getString("title"));
        }


        
// 释放数据库资源,注意顺序
        rs.close();
        ps.close();

    }


    
public void f4() throws Exception {
        Statement st 
= con.createStatement();

        
// 执行SQL语句,接收执行结果(运输)
        int rs = st.executeUpdate("update titles set title='aaaaaa'");

        
// 处理结果
        System.out.println("修改记录数:" + rs);

        
// 释放数据库资源,注意顺序
        st.close();
        con.close();

    }


    
public void f5() throws Exception {
        
// 创建SQL语句载体(造普通车)
        Statement st = con.createStatement();

        
// 执行SQL语句,接收执行结果(运输)
        ResultSet rs = st.executeQuery("select * from titles");

        
// 处理结果
        while (rs.next()) {
            System.out.println(
"书籍编号:" + rs.getString("title_id"));
        }


        
// 释放数据库资源,注意顺序
        rs.close();
        st.close();

    }


    
public static void main(String[] args) {
        DBConn dbconn 
= new DBConn();
    }


}

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值