码迷,mamicode.com
首页 > 其他好文 > 详细

BaseDAO,要背过哦

时间:2014-08-28 07:25:39      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:os   java   io   for   ar   数据   cti   sp   on   

package com.equipmentmanager.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";  // 链接的URL  private static final String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=equipmentDB";  // 登录sqlserver用户名密码  private static final String USERNAME = "sa";  private static final String PWD = "1234";  // 数据库对象声明  private Connection con = null;  private PreparedStatement pst = null;  private ResultSet rs = null;      /**   * 加载驱动,建立连接   *   * @throws ClassNotFoundException   * @throws SQLException   */  private void getConnection() throws ClassNotFoundException, SQLException {   Class.forName(DRIVER);   con = DriverManager.getConnection(URL, USERNAME, PWD);  }

 /**   * 执行更改(增加,删除,修改)SQL的方法   *   * @param sql   *            要执行的参数化的sql语句   * @param params   *            Object 数据,封装所有SQL语句参数,顺序与SQL语句参数顺序一致   * @return int型 受影响的行数 -1出现异常   */  public int execUpdate(String sql, Object[] params) {   try {    getConnection();    pst = con.prepareStatement(sql);    setPrepareStatementParams(params);    int affectedRows = pst.executeUpdate();    return affectedRows;   } catch (ClassNotFoundException e) {

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

   e.printStackTrace();   } finally {    clossAll();   }   return -1;  }

 /**   * 执行查询   *   * @param sql   *            要执行的参数化的sql语句   * @param params   *            Object 数据,封装所有SQL语句参数,顺序与SQL语句参数顺序一致   * @return ResultSet 返回执行后的结果 结果集   */  public ResultSet execQuery(String sql, Object[] params) {   try {      // 获得连接    getConnection();    // 构造    pst = con.prepareStatement(sql);    // 设置参数    setPrepareStatementParams(params);

   rs = pst.executeQuery();   } catch (SQLException e) {

   e.printStackTrace();   } catch (ClassNotFoundException e) {

   e.printStackTrace();   }   return rs;  }

 /**   * 为PrepareStatement设置参数   *   * @param params   *            参数数组   * @throws SQLException   */  private void setPrepareStatementParams(Object[] params) throws SQLException {   if (params != null) {    for (int i = 0; i < params.length; i++) {     pst.setObject(i + 1, params[i]);    }   }  }

 /**   * 关闭Connection,PrepareStatement,ResultSet   */  public void clossAll() {   try {    if (rs != null) {     rs.close();    }    if (pst != null) {     pst.close();    }    if (con != null) {     con.close();    }   } catch (SQLException e) {    e.printStackTrace();

  }  }

}

BaseDAO,要背过哦

标签:os   java   io   for   ar   数据   cti   sp   on   

原文地址:http://www.cnblogs.com/junlin9393/p/3940725.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!