Java中增删改查通用方法。

package cn.com.ruanyuan.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class BaseDAO {
 private static final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
 private static final String URL = "jdbc:sqlserver://localhost:1433;DatabaseName= booksystem";
 private static final String USERNAME = "sa";
 private static final String PASSWORD = "sa";
 protected Connection conn;
 protected PreparedStatement pstmt;
 protected ResultSet rs;
 //创建连接方法
 protected void getConnection(){
  try{
   try {
    Class.forName(DRIVER);
   } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   conn =  DriverManager.getConnection(URL,USERNAME, PASSWORD);
  }catch(SQLException e){
   e.printStackTrace();
  }
 }
 //闭合方法
 protected void closeResource(){
  if(rs!=null){
    try {
     rs.close();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
  if(pstmt!=null){
   try {
    pstmt.close();
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
  if(conn!=null){
   try {
    conn.close();
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
  }
  }
 }
 //查询方法
 public ResultSet execQuery(String sql,String[] paras){
  try{
   this.getConnection();
   pstmt = conn.prepareStatement(sql);
   if(paras!=null&& paras.length>0){
    int index = 1;
    for(String para:paras){
     pstmt.setString(index, para);
     index++;
    }
   }
   rs = pstmt.executeQuery();
  }catch(SQLException e){
   e.printStackTrace();
  }
  return rs;
 }
 //增删改
 public int execUpdate(String sql, String[] paras){
  int row = 0;//受影响的行数
  //链接数据库
  this.getConnection();
  //基于SQL语句得到PreparedStatement对象
  try{
   pstmt = conn.prepareStatement(sql);
   //创建并添加相应的参数
   if(paras!=null&&paras.length>0){
    //将SQL语句参数数组中的值依次赋值给与执行语句
    for(int i=0;i<paras.length;i++){
     pstmt.setString(i+1,  paras[i]);
    }
   }
   row = pstmt.executeUpdate();
  }catch(SQLException e){
   e.printStackTrace();
  }finally{
   this.closeResource();
  }
  return row;
  
 }
 
 
 
 
 
 
}
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值