본문 바로가기

Project/2. My First Website <Mybatis>

project 3.5 My first website/ 게시판 내 게시글 보기

우측 상단에 있는  MY POST를 누르면 내가 쓴 게시글들만 볼 수 있다. 

 

 

 

 

1. view

뿌려주는 방법은 일반 boardList와 같다. 다만 다른 쿼리를 돌아야되기 때문에 함수만 걸어준다.

boardList.jsp

// 내 게시글 목록 보기

function fn_myBoardList(f) {

f.action = '/MYHOME_P/myBoardList.board';

f.submit();

}

 

 

2. Controller

case "/myBoardList.board" :

boardCommand = new MyBoardListCommand();

vf = boardCommand.excute(request, response);

break;

 

 

3. Command

total posts 개수도 달라지기 때문에 여기서 totalMyrecord int로 선언했고, 페이징도 내 게시물에 맞는 페이징으로 처리했다.

 

 

4. Dao

public List<BoardDto> selectMyBoardList(Map<String, String> map) {

SqlSession ss = factory.openSession();

List<BoardDto> list = ss.selectList("mybatis.mapper.board.selectMyBoardList",map);

ss.close();

return list;

}

 

public int selectMyBoardCount(Map<String, String> map) {

SqlSession ss = factory.openSession();

int totalQueryRecord = ss.selectOne("mybatis.mapper.board.selectMyBoardCount",map);

ss.close();

return totalQueryRecord;

}

 

5. xml

<select id="selectMyBoardList" parameterType="Map" resultType="dto.BoardDto">

SELECT *

FROM (SELECT ROWNUM AS RN, A.*

      FROM (SELECT   *

            FROM     BOARD2

            WHERE    MID = #{mId}

                ORDER BY BGROUP DESC, BDEPTH ASC, BGROUPORD ASC) A)

    WHERE RN BETWEEN #{begin} AND #{end}

</select>

 

<select id="selectMyBoardCount" parameterType="Map" resultType="int">

SELECT COUNT(*)

  FROM BOARD2

WHERE MID = #{mId} 

</select>