0
저는 Spring 프레임 워크를 처음 사용합니다. 현재 한 지점에서 멈추었습니다. 그래서 기본적으로 일부 정보가있는 직원 목록을 검색하려고합니다. 나는 직원 데이터와 다른 하나는 직원이 수상한 두 테이블을 가지고 있습니다. 이제는 상장 된 직원 목록을 원합니다. 이런 식으로하려고합니다.RowMapper에서 RowMapper 사용
public ArrayList<Employee> getAwrdDist() {
String sql = "SELECT DISTINCT a.`Idcode`,a.`Name` FROM `gen_profile` a, `awards_received` b WHERE a.`Idcode`=b.`IDCODE`";
ArrayList<Employee> arrEmp = new ArrayList<Employee>();
arrComt = (ArrayList<Employee>) jdbcTemplate.query(sql, new RowMapper<Employee>(){
@Override
public Employee mapRow(ResultSet rs, int arg1) throws SQLException {
Employee objEmp = new Employee();
objEmp.setIdcode(rs.getString("Idcode"));
objEmp.setName(rs.getString("Name"));
String awrdSql = "SELECT a.`AWARD_NAME`,a.`AWARDING_BODY`,a.`AWARD_DATE` FROM `awards_received` a"+
" WHERE a.`IDCODE`="+objEmp.getIdcode();
ArrayList<Award> arrWonAwards = new ArrayList<Award>();
arrWonAwards = (ArrayList<Award>) jdbcTemplate.query(sql, new RowMapper<Award>(){
@Override
public AwardmapRow(ResultSet rs, int arg1) throws SQLException {
Award wonAward = new Award();
wonAward.setAwrdNm(rs.getString("AWARD_NAME"));
wonAward.setAwrdBody(rs.getString("AWARDING_BODY"));
wonAward.setAwrdDt(rs.getString("AWARD_DATE"));
return wonAward ;
}
});
objEmp.setArrWonAwrds(arrWonAwards);
return objEmp;
}
});
return arrComt;
}
제발 도와주세요.
감사 :
코드 위에 사용하려면 같은 쿼리 뭔가를 수정해야합니다. 이전에이 쿼리를 사용했습니다. 하지만 결과를 표시하는 동안 문제가 발생했습니다. 어떤 경우에는 한 명의 직원이 여러 개의 상을 수상 할 수 있으므로이 경우 심각한 코딩상의 문제에 직면하게됩니다. 그래서 내가 Plan B를 사용하고 있습니다. –