package org.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; /** * * * 项目名称:test_face_photo * 类名称:BaseDao * 类描述: 数据库连接共用类 * 创建人:Mu Xiongxiong * 创建时间:2017-9-22 下午6:56:18 * 修改人:Mu Xiongxiong * 修改时间:2017-9-22 下午6:56:18 * 修改备注: * @version * */ public class BaseDao { private static Connection con = null; //数据库驱动 private static String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //连接字符串 private static String url = "jdbc:sqlserver://localhost:1433; DatabaseName=facedb"; //数据库用户名 private static String user = "sa"; //密码 private static String pwd = "171268"; //初始化PreparedStatement,编译sql语句 private static PreparedStatement ps = null; //初始化ResultSet数据集 private static ResultSet rs = null; /** * * @Description: 该方法的主要作用:打开连接,连接数据库 * @Title: getConnection * @param @return * @param @throws ClassNotFoundException * @param @throws SQLException 设定文件 * @return 返回类型:Connection * @throws */ public static Connection getConnection() throws ClassNotFoundException, SQLException{ Class.forName(driver); if(con==null){ con = DriverManager.getConnection(url,user,pwd); } return con; } /** * * @Description: 该方法的主要作用:增删改通用的方法 * @Title: executeUpdate * @param @param sql * @param @param prams * @param @return * @param @throws ClassNotFoundException * @param @throws SQLException 设定文件 * @return 返回类型:int * @throws */ public static int executeUpdate(String sql,List<Object> prams) throws ClassNotFoundException, SQLException{ int rel = 0; con = getConnection(); ps = con.prepareStatement(sql); if(prams!=null){ for (int i = 0; i <prams.size(); i++) { ps.setObject(i+1, prams.get(i)); } } rel = ps.executeUpdate(); return rel; } /** * * @Description: 该方法的主要作用:查询的通用方法 * @Title: executeQuery * @param @param sql * @param @param prams * @param @return 设定文件 * @return 返回类型:ResultSet * @throws */ public static ResultSet executeQuery(String sql,List<Object>prams) throws ClassNotFoundException, SQLException{ con = getConnection(); ps = con.prepareStatement(sql); if(prams!=null){ for (int i = 0; i < prams.size(); i++) { ps.setObject(i+1, prams.get(i)); } } rs = ps.executeQuery(); return rs; } /** * * @Description: 该方法的主要作用:关闭资源 * @Title: closeConnnection * @param 设定文件 * @return 返回类型:void * @throws */ public static void closeConnnection(){ //关闭之前先判断是否为null if(rs!=null){ try { rs.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(ps!=null){ try { ps.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(con!=null){ try { con.close(); con=null; } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } /** * * @Description: 该方法的主要作用:测试连接数据库与否 * @Title: main * @param @param args 设定文件 * @return 返回类型:void * @throws */ public static void main(String[] args) { try { System.out.println(getConnection()); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }