한 페이지에 10개의 게시글을 불러오는 메서드 작성

sqlMap.queryForList(String args0, Object args1)
public static List getBoardList(long rowsPerPage, long currentPage) {
  List result = new ArrayList(); 
  SqlMapClient sqlMap = MyAppSqlConfig.getSqlMapInstance();
  
  //페이지 정보를 저장한 객체생성
  BoardPage bp = new BoardPage();
  bp.setRowsPerPage(rowsPerPage);
  bp.setCurrentPage(currentPage);
  
  try {
   
   //페이지정보를 저장한 객체를 인자로 넘겨서 리스트를 구함
   result = sqlMap.queryForList("getBoardList", bp);   
   
  } catch(Exception e) {
   e.printStackTrace();
  }
  return result;
 }

 

Board.xml에서 매핑되는 코드 작성

Board.xml
<!-- select된 Board객체를 Mapping시킴 -->
 <resultMap id="boardResultMap" class="board.model.Board">
  <result property="bno" column="bno" />
  <result property="subject" column="subject" />
  <result property="writer" column="writer" />
  <result property="writedate" column="writedate" />
  <result property="hitcount" column="hitcount" />
 </resultMap>
 
  <!-- 페이지에 맞춰 게시글 검색  -->
  <select id="getBoardList" parameterClass="board.model.BoardPage" resultMap="boardResultMap" resultClass="board.model.Board">
  <![CDATA[
  select *
  from ( select rownum rnum, bno, subject, writer, writedate, hitcount
   from ( select bno, subject, writer, writedate, hitcount
             from board
       order by bno desc )
   where rownum <= ( #rowsPerPage# * #currentPage# )
   )
  where rnum >= ( #rowsPerPage# * ( #currentPage# - 1 ) + 1 )
  ]]>
 

'개발자 센터 > iBatis' 카테고리의 다른 글

간결한 데이터 매퍼의 대명사, iBATIS SQLMaps 활용법  (0) 2009.12.13
iBatis 참고 사이트  (0) 2009.12.13
iBatis SqlMapClient API  (1) 2009.12.13
iBatis Framework의 구성  (0) 2009.12.13
iBatis Framework  (0) 2009.12.13
Posted by 피곤키오
,