public static Connection getConnection() {
Connection con= null;try{
Class.forName("com.mysql.jdbc.Driver");
System.out.println("数据库驱动加载成功");
}catch(ClassNotFoundException e) {
e.printStackTrace();
}try{
con= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/maxinhai?characterEncoding=UTF-8","maxinhai", "maxinhai");
System.out.println("数据库连接成功");
}catch(SQLException e) {
e.printStackTrace();
}returncon;
}/**
* 执行增加、删除、修改 sql操作
*
* @auther maxinhai
* @param con 连接对象
* @param sql 增加、删除、修改sql语句
* @param params 条件参数
* @return 查询结果*/public staticint executeUpdate(Connection con, String sql, Listparams) {int num = 0;
PreparedStatement ps= null;try{//预处理对象
System.out.println(sql);
ps=con.prepareStatement(sql);//填充参数
if (params.size() > 0) {for (int i = 0; i < params.size(); i++) {
ps.setObject(i+ 1, params.get(i));
}
}//执行sql
num =ps.executeUpdate();
System.out.println("影响了" + num + "条信息");
}catch(SQLException e) {
e.printStackTrace();
}finally{try{if (ps != null)
ps.close();if (con != null)
con.close();
}catch(Exception e) {
e.printStackTrace();
}
}returnnum;
}/**
* 执行查询语句
*
* @auther maxinhai
* @param con 连接对象
* @param querySql 查询语句
* @param params 查询条件参数
* @return 查询结果*/public static List> executeQuery(Connection con, String querySql, Listparams) {
List> table = null;
PreparedStatement ps= null;
ResultSet queryResult= null;try{//获取预处理对象
ps =con.prepareStatement(querySql);//填充参数
if (params != null && params.size() > 0) {for (int i = 0; i < params.size(); i++) {
ps.setObject(i+ 1, params.get(i));
}
}//执行查询
queryResult =ps.executeQuery();//获取键名
ResultSetMetaData md =queryResult.getMetaData();//获取行的数量
int columnCount =md.getColumnCount();
table= newArrayList();while(queryResult.next()) {//链表保证顺序
Map rowData = new LinkedHashMap<>();for (int i = 1; i <= columnCount; i++) {//获取键名及值
rowData.put(md.getColumnName(i), queryResult.getObject(i));
}
table.add(rowData);
}
}catch(SQLException e) {
e.printStackTrace();
}finally{try{if (ps != null)
ps.close();if (con != null)
con.close();if (queryResult != null)
queryResult.close();
}catch(Exception e) {
e.printStackTrace();
}
}returntable;
}