需要掌握:Java JDBC ConnectionFactory类1.0
说明
由于 JDBC 操作数据库,进行增删改查,大部分代码都相同,所以创建工具类,封装 增删改查操作
代码
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class DbUtils {
protected Connection conn;
/**
* 查询
* @param sql
* @param objects
* @throws SQLException
*/
public List<Object[]> query(String sql,Object ... objects ) throws SQLException{
PreparedStatement ps=conn.prepareStatement(sql);
if(objects!=null && objects.length>0){
for(int i=0;i<objects.length;i++){
ps.setObject(i+1, objects[i]);
}
}
ResultSet rs=ps.executeQuery();
ResultSetMetaData metaData = rs.getMetaData();
int columnNum=metaData.getColumnCount();
List list=new ArrayList();
while(rs.next()){
Object[] array=new Object[columnNum];
for(int i=0;i<columnNum;i++){
array[i]=rs.getObject(i+1);
}
list.add(array);
}
rs.close();
ps.close();
return list;
}
/**
* 增删改
* @param sql
* @param objects
* @return
* @throws SQLException
*/
public int update(String sql,Object ... objects) throws SQLException{
PreparedStatement ps=conn.prepareStatement(sql);
if(objects!=null && objects.length>0){
for(int i=0;i<objects.length;i++){
ps.setObject(i+1, objects[i]);
}
}
int i=ps.executeUpdate();
ps.close();
return i;
}
public void close() throws SQLException{
if(conn!=null){
conn.close();
}
}
public void setConnection(Connection connection) {
this.conn = connection;
}
}