2011.05.30 22:16
대략적인 소스코드 이며, 맞지 않는 부분은 고쳐 쓸 줄 아는 지혜가 필요하겠습니다 ^__^
여기서 중요한 부분은 List 에 값을 넣고, 다시 받아와서 뿌리는 것 까지 입니다.


Class 부분 입니다. (List에 관계되는 부분만 강조하여 표시하였습니다)
 public List<String> getStatus() throws ServiceException, SQLException{
  Connection conn = ConnectionProvider.getConnection();
  PreparedStatement pstmt = null;
  ResultSet rs = null;
  String tmpStr = "";
  try{
   pstmt = conn.prepareStatement("select * from table");
   rs = pstmt.executeQuery();
   if(rs.next()){
    List<String> statList = new ArrayList<String>();
    do{
     tmpStr = "";
     tmpStr = tmpStr + rs.getString(1) + "|" + rs.getString(2);
     statList.add(tmpStr);
    }while(rs.next());
    return statList;
   }else{
    return Collections.emptyList();
   }
  }catch(SQLException e){
   throw new ServiceException("메시지 목록 구하기 실패 : " + e.getMessage(), e);
  }finally{
   JdbcUtil.close(rs);
   JdbcUtil.close(pstmt);
   JdbcUtil.close(conn);
  }
 }

- String 객체에 Select 된 결과의 칼럼1, 칼럼2 사이에 구분자 "|" 를 넣어서 붙인다음 List 에 추가 하여 리턴 하였습니다



Jsp 부분 입니다.
<%
 GetStatusService statData = new GetStatusService();
 List<String> stData = statData.getStatus();
%>

<%
 for(int i=0; i < stData.size();i++ ){
 String arrData[] = stData.get(i).split("[|]");
...(필요한 코드 추가)
 }
%>

- 해당 클래스의 인스턴스를 생성한 다음 List 를 선언하여 해당 메소드를 실행한 결과를 받아 냅니다.
- For 문을 이용하여 List의 처음부터 끝까지 돌면서 계속하여 String 값을 가져 와서 구분자단위로 끊어 arrData[]배열에 담아냅니다.
- 받아낸 데이터를 적당히 뿌려 줍니다. (이건 알아서...)
Posted by 해비