게시판7) 글확인

1130sp1

boardList에서 boardDetail 로 넘어가기

  • boardList.jsp 에서 글을 클릭하면 javascript가 동작하게 했다.

    <a href="javascript:boardDetail(${board.boardseq})">${board.title}</a>
    
  • 아래와 같은 function 이 실행된다. location.href = “현재주소/boarddetail?boardseq=boardseq” 이렇게 Controller에 boarddetail과 매핑되어있는 메소드로 boardseq 정보가 전달되며 실행된다.

    function boardDetail(boardseq){
    	var req = "boarddetail?boardseq=" + boardseq;
    	location.href = req;
    }
    

boardDetail 에서 글 확인하기

  • 똑같은게 계속 반복된다.

BoardController.java

  • list에서 넘어온 boardseq정보를 spring 이 알아서 board 객체에 넣어준다. 넘어온 boardseq 정보로 DB에서 해당되는 board 객체를 가져온다.

    @RequestMapping("/boarddetail")
    public String boardDetail(int boardseq, Model model) {
        Board board = repository.boardDetail(boardseq);
        //hit count 를 여기서 올려준다. 조회수 올릴 수 있도록 DB에 한번 더! insert, delete, update는 oracle에서 int를 리턴한다. select만 객체를 리턴한다.
        int result = repository.hitCount(boardseq);
        model.addAttribute("board",board);
        return "board/boardDetail";
    }
    

BoardController.jsp

  • 자신의 글만 수정할 수 있게 한다.

로긴

  • <c:if test = “${sessionScope.loginId==board.userid }”></c:if> 를 사용해 userid와 작성자 id가 같으면 수정 삭제 버튼이 보이도록 한다.

    • jsp파일에서 http session 에 있는 정보를 가져올때는 sessionScope.변수명 을 해준다. 그러면 자동으로 getter가 불려서 정보가 가져와짐 (변수에 직접 접근하는게 아닌데 그렇게 보인다.)
    • java 파일에서 http session 에 있는 정보를 가져올때는(보통 controller 파일 같다.) session.getAttribute(“변수명”); 이래한다.
    <h1> [  글 보 기  ]</h1>
    
    <table border  ="1">
        <tr>
            <th>글쓴이</th>
            <td>${board.userid}</td>
        </tr>
        <tr>
            <th>제목</th>
            <td>${board.title }</td>
        </tr>
        <tr>
            <th>첨부파일</th>
            <td></td>
        </tr>
    
        <tr>
            <th>글내용</th>
            <td><pre>${board.message}</pre></td>
        </tr>
        <tr>
    
            <th colspan="2">
                <c:if test = "${sessionScope.loginId==board.userid }">
                    <input type = "button" value = "글수정">&nbsp;
                    <input type = "button" value="글삭제"></c:if>
                <a href = "">목록으로 </a>
            </th>
        </tr>
    </table>
    <br>
    

boarderRepository

public Board boardDetail(int boardseq) {
    BoardMapper mapper = session.getMapper(BoardMapper.class);
    Board board = mapper.boardDetail(boardseq);
    return board;
}

boarderMapper.xml

<select id = "boardDetail" parameterType ="int" resultType="Board">
    SELECT
    boardseq,
    userid,
    title,
    message,
    to_char(regdate,'YYYY-MM-DD') as regdate
    ,hitcount
    , originalfile
    , savedfile
    FROM
    BOARD
    WHERE
    boardseq = #{boardseq}
</select>

◇ Spring 게시판 포스팅 시리즈 ◇

  1. Spring 과 DB 연결하기
  2. 회원 가입 화면 구성
  3. ID 중복 확인 하기
  4. 로그인 페이지 만들기
  5. 게시판 화면 구성하기
  6. 글 쓰기 기능 구현
  7. 글 확인 기능 구현 - 현재 글
  8. 글 수정 기능 구현
  9. 게시판 페이징
  10. 파일 첨부 기능
  11. 파일 다운 기능
  12. MIME 타입
  13. 글 수정시 파일 변경

© 2018. All rights reserved.

Powered by Hydejack v8.5.2