/**
*把插入的数据封装到一个对象里面
*/
public static boolean insert(String table,Object obj){
try {
// 用于拼sql
StringBuilder sb=new StringBuilder();
Class cls=obj.getClass();
//获取字段
Field[] fields= cls.getDeclaredFields();
Mapmap=new HashMap<>();
// 拿到字段对应的值,并且放入map中
for(Field f:fields){
f.setAccessible(true);
String key=f.getName();
Object value=f.get(obj);
if(value!=null) {
map.put(key, value);
}
}
//拼接sql
sb.append("insert into "+table+"(");
List key=new ArrayList<>();
for(Map.Entry m:map.entrySet()){
key.add(m.getKey());
}
for(int i=0;i
sb.append(key.get(i)+",");
}
sb.append(key.get(key.size()-1)+") values(");
for(int i=0;i
sb.append("? , ");
}
sb.append("? )");
Connection conn = getConnection();
PreparedStatement ps=conn.prepareStatement(sb.toString());
// insert ....values(?,?,?) 给站位符赋值
for(int i=0;i
ps.setObject(i+1,key.get(i));
}
int result= ps.executeUpdate();
return true?false:result>0;
}catch (Exception e){
e.printStackTrace();
}
return false;
}