public boolean insert(Hardware hardware){
String sql = " INSERT INTO HardwareInfo(HardwareName,ClassId,RoomId) VALUES(?,?,?)";
Connection conn = null;
PreparedStatement ps = null;
try {
conn = DBHelper.getConnection();
if(conn == null){
throw new Exception("HardwareDAO: 无法获得数据库连接!");
}
conn.setAutoCommit(false);
int num = 1;
ps = conn.prepareStatement(sql);
ps.setString(num++, hardware.getHardwareName());
if(hardware.getClassName() != null){
Class cl = new ClassDAO().queryClass(hardware.getClassName());
ps.setInt(num++, cl.getClassId());
}else{
ps.setString(num++, null);
}
if(hardware.getRoomName() != null){
Room room = new RoomDAO().queryRoom(hardware.getRoomName());
ps.setInt(num++, room.getRoomId());
}else{
ps.setString(num++, null);
}
if(ps.executeUpdate() <= 0){
throw new Exception("插入表HardwareInfo出错!");
}
conn.commit();
return true;
} catch (Exception e) {
System.err.println("****插入表HardwareInfo出错!");
e.printStackTrace();
try {
if(conn != null){
conn.rollback();
}
} catch (Exception ex) {}
return false;
}finally{
DBHelper.close(conn);
}
}
String sql = " INSERT INTO HardwareInfo(HardwareName,ClassId,RoomId) VALUES(?,?,?)";
Connection conn = null;
PreparedStatement ps = null;
try {
conn = DBHelper.getConnection();
if(conn == null){
throw new Exception("HardwareDAO: 无法获得数据库连接!");
}
conn.setAutoCommit(false);
int num = 1;
ps = conn.prepareStatement(sql);
ps.setString(num++, hardware.getHardwareName());
if(hardware.getClassName() != null){
Class cl = new ClassDAO().queryClass(hardware.getClassName());
ps.setInt(num++, cl.getClassId());
}else{
ps.setString(num++, null);
}
if(hardware.getRoomName() != null){
Room room = new RoomDAO().queryRoom(hardware.getRoomName());
ps.setInt(num++, room.getRoomId());
}else{
ps.setString(num++, null);
}
if(ps.executeUpdate() <= 0){
throw new Exception("插入表HardwareInfo出错!");
}
conn.commit();
return true;
} catch (Exception e) {
System.err.println("****插入表HardwareInfo出错!");
e.printStackTrace();
try {
if(conn != null){
conn.rollback();
}
} catch (Exception ex) {}
return false;
}finally{
DBHelper.close(conn);
}
}