try {
Session session = getSession();
Connection conn = session.connection();
PreparedStatement stmt$cnadidate$select = null;
PreparedStatement stmt$cnadidate$update = null;
PreparedStatement stmt$cnadidate$insert = null; 
PreparedStatement stmt$enrollstu$select = null;
PreparedStatement stmt$enrollstu$update = null;
PreparedStatement stmt$enrollstu$insert = null;
PreparedStatement stmt$enrollstu$sequence = null;
ResultSet rs$cnadidate = null;
ResultSet rs$enrollstu = null;
ResultSet rs$sequence = null;
if (conn != null) {
stmt$cnadidate$select = conn.prepareStatement(SQLSELECT$CNADIDATE);//Query old data
stmt$cnadidate$update = conn.prepareStatement(SQLUPDATE$CNADIDATE);//Update old data
stmt$cnadidate$insert = conn.prepareStatement(SQLINSERT$CNADIDATE);//Add a data
stmt$enrollstu$select = conn.prepareStatement(SQLSELECT$ENROLLSTU);//Query old data
stmt$enrollstu$update = conn.prepareStatement(SQLUPDATE$ENROLLSTU);//Update old data
stmt$enrollstu$insert = conn.prepareStatement(SQLINSERT$ENROLLSTU);//Add a data
stmt$enrollstu$sequence = conn.prepareStatement(SQLSEQUENCE);//Get sequence NO.
for (AdEduEnrollStu adEduEnrollStu : eduEnrollStus) {
stmt$cnadidate$select.setLong(1, adEduEnrollStu.getAdEduCnadidate().getCandidateId());
rs$cnadidate = stmt$cnadidate$select.executeQuery();
if (rs$cnadidate != null && rs$cnadidate.next()) {
if (rs$cnadidate.getString("candidate_id") != null && !"".equals(rs$cnadidate.getString("candidate_id"))) {
stmt$enrollstu$select.setLong(1, adEduEnrollStu.getAdEduCnadidate().getCandidateId());
rs$enrollstu = stmt$enrollstu$select.executeQuery();
if (rs$enrollstu != null && rs$enrollstu.next()) {
if (rs$enrollstu.getString("enroll_stu_id") != null && !"".equals(rs$enrollstu.getString("enroll_stu_id"))) {//Has an old data.do update.
stmt$cnadidate$update.setString(1,  adEduEnrollStu.getAdEduCnadidate().getApplyLevel());
stmt$cnadidate$update.setString(2,  adEduEnrollStu.getAdEduCnadidate().getIdCardNo());
stmt$cnadidate$update.setString(3,  adEduEnrollStu.getAdEduCnadidate().getName());
stmt$cnadidate$update.setString(4,  adEduEnrollStu.getAdEduCnadidate().getGender());
stmt$cnadidate$update.setString(5,  adEduEnrollStu.getAdEduCnadidate().getResidensePlace());
stmt$cnadidate$update.setString(6,  adEduEnrollStu.getAdEduCnadidate().getEducationType());
stmt$cnadidate$update.setFloat (7,  adEduEnrollStu.getAdEduCnadidate().getScore());
stmt$cnadidate$update.setString(8,  "N");
stmt$cnadidate$update.setDate  (9,  new java.sql.Date(System.currentTimeMillis()));
stmt$cnadidate$update.setLong  (10, adEduEnrollStu.getAdEduCnadidate().getCandidateId());
stmt$cnadidate$update.addBatch();

stmt$enrollstu$update.setString(1, adEduEnrollStu.getAcademicYear());
stmt$enrollstu$update.setString(2, adEduEnrollStu.getEnrollStuCode());
stmt$enrollstu$update.setString(3, adEduEnrollStu.getDeptCode());
stmt$enrollstu$update.setLong  (4, adEduEnrollStu.getProfessionId());
stmt$enrollstu$update.setString(5, adEduEnrollStu.getBantchSeq());
stmt$enrollstu$update.setLong  (6, Long.parseLong(rs$enrollstu.getString("enroll_stu_id")));
stmt$enrollstu$update.addBatch();
}
}
}
} else {//Never hava an old data,do insert.
stmt$cnadidate$insert.setLong  (1,  adEduEnrollStu.getAdEduCnadidate().getCandidateId());
stmt$cnadidate$insert.setString(2,  adEduEnrollStu.getAdEduCnadidate().getApplyLevel());
stmt$cnadidate$insert.setString(3,  adEduEnrollStu.getAdEduCnadidate().getIdCardNo());
stmt$cnadidate$insert.setString(4,  adEduEnrollStu.getAdEduCnadidate().getName());
stmt$cnadidate$insert.setString(5,  adEduEnrollStu.getAdEduCnadidate().getGender());
stmt$cnadidate$insert.setString(6,  adEduEnrollStu.getAdEduCnadidate().getResidensePlace());
stmt$cnadidate$insert.setString(7,  adEduEnrollStu.getAdEduCnadidate().getEducationType());
stmt$cnadidate$insert.setFloat (8,  adEduEnrollStu.getAdEduCnadidate().getScore());
stmt$cnadidate$insert.setString(9,  "N");
stmt$cnadidate$insert.setDate  (10,  new java.sql.Date(System.currentTimeMillis()));
stmt$cnadidate$insert.addBatch();

rs$sequence = stmt$enrollstu$sequence.executeQuery();
if (rs$sequence != null && rs$sequence.next()) {
if (rs$sequence.getString("nextval") != null && !"".equals(rs$sequence.getString("nextval"))) {
stmt$enrollstu$insert.setLong  (1, Long.parseLong(rs$sequence.getString("nextval")));
stmt$enrollstu$insert.setLong  (2, adEduEnrollStu.getAdEduCnadidate().getCandidateId());
stmt$enrollstu$insert.setString(3, adEduEnrollStu.getAcademicYear());
stmt$enrollstu$insert.setString(4, adEduEnrollStu.getEnrollStuCode());
stmt$enrollstu$insert.setString(5, adEduEnrollStu.getDeptCode());
stmt$enrollstu$insert.setLong  (6, adEduEnrollStu.getProfessionId());
stmt$enrollstu$insert.setString(7, adEduEnrollStu.getBantchSeq());
stmt$enrollstu$insert.addBatch();
}
}
}
if (rs$cnadidate != null) {
rs$cnadidate.clearWarnings();
rs$cnadidate.close();
}
if (rs$enrollstu != null) {
rs$enrollstu.clearWarnings();
rs$enrollstu.close();
}
if (rs$sequence != null) {
rs$sequence.clearWarnings();
rs$sequence.close();
}
}
}
if (stmt$cnadidate$select != null) {
/** Clear the Statement and Connection */
stmt$cnadidate$select.clearBatch();
stmt$cnadidate$select.clearParameters();
stmt$cnadidate$select.clearWarnings();
stmt$cnadidate$select.close();
}
if (stmt$cnadidate$update != null) {
stmt$cnadidate$update.executeBatch();//Execute the batch
/** Clear the Statement and Connection */
stmt$cnadidate$update.clearBatch();
stmt$cnadidate$update.clearParameters();
stmt$cnadidate$update.clearWarnings();
stmt$cnadidate$update.close();
}
if (stmt$cnadidate$insert != null) {
stmt$cnadidate$insert.executeBatch();//Execute the batch
/** Clear the Statement and Connection */
stmt$cnadidate$insert.clearBatch();
stmt$cnadidate$insert.clearParameters();
stmt$cnadidate$insert.clearWarnings();
stmt$cnadidate$insert.close();
}
if (stmt$enrollstu$select != null) {
stmt$enrollstu$select.clearBatch();
stmt$enrollstu$select.clearParameters();
stmt$enrollstu$select.clearWarnings();
stmt$enrollstu$select.close();
}
if (stmt$enrollstu$update != null) {
stmt$enrollstu$update.executeBatch();//Execute the batch
/** Clear the Statement and Connection */
stmt$enrollstu$update.clearBatch();
stmt$enrollstu$update.clearParameters();
stmt$enrollstu$update.clearWarnings();
stmt$enrollstu$update.close();
}
if (stmt$enrollstu$insert != null) {
stmt$enrollstu$insert.executeBatch();//Execute the batch
/** Clear the Statement and Connection */
stmt$enrollstu$insert.clearBatch();
stmt$enrollstu$insert.clearParameters();
stmt$enrollstu$insert.clearWarnings();
stmt$enrollstu$insert.close();
}
if (stmt$enrollstu$sequence != null) {
/** Clear the Statement and Connection */
stmt$enrollstu$sequence.clearBatch();
stmt$enrollstu$sequence.clearParameters();
stmt$enrollstu$sequence.clearWarnings();
stmt$enrollstu$sequence.close();
}
if (conn != null) {
conn.commit();
conn.close();
}
return true;
} catch (DataAccessResourceFailureException e) {
logger.error(e);
throw new DAOException("data access error", e);
} catch (HibernateException e) {
logger.error(e);
throw new DAOException("data access error", e);
} catch (IllegalStateException e) {
logger.error(e);
throw new DAOException("data access error", e);
} catch (SQLException e) {
logger.error(e);
throw new DAOException("data access error", e);
}/** The Constant SQLSEQUENCE. */
private static final String SQLSEQUENCE = "select s_ad_edu_enroll_stu.nextval nextval from dual";

/** The Constant SQLSELECT$CNADIDATE. */
private static final String SQLSELECT$CNADIDATE = "select candidate_id from ad_edu_cnadidate where candidate_id = ?";

/** The Constant SQLSELECT$ENROLLSTU. */
private static final String SQLSELECT$ENROLLSTU = "select enroll_stu_id from ad_edu_enroll_stu where candidate_id = ?";

/** The Constant SQLUPDATE$CNADIDATE. */
private static final String SQLUPDATE$CNADIDATE = "update ad_edu_cnadidate set apply_level = ?, id_card_no = ?, name = ?, gender = ?, " +
"residense_place = ?, education_type = ?, score = ?, verifry_result = ?, update_time = ? where candidate_id = ?";

/** The Constant SQLUPDATE$ENROLLSTU. */
private static final String SQLUPDATE$ENROLLSTU = "update ad_edu_enroll_stu set academic_year = ?, enroll_stu_code = ?, dept_code = ?, profession_id = ?, " +
"bantch_seq = ? where enroll_stu_id = ?";

/** The Constant SQLINSERT$CNADIDATE. */
private static final String SQLINSERT$CNADIDATE = "insert into ad_edu_cnadidate (candidate_id, apply_level, id_card_no, name, gender, residense_place, " +
"education_type, score, verifry_result, update_time) values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";

/** The Constant SQLINSERT$ENROLLSTU. */
private static final String SQLINSERT$ENROLLSTU = "insert into ad_edu_enroll_stu (enroll_stu_id, candidate_id, academic_year, enroll_stu_code, dept_code, " +
"profession_id, bantch_seq) values(?, ?, ?, ?, ?, ?, ?)";怎么只能插入40条数据????多余的全都不能插入!!!!!!!!!!!!!!!!!!!!!!