write.jsp복사해서
view.jsp만들기
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 조회</title>
</head>
<body>
<form method="post">
<label>제목</label>
<input type="text" name="title" /><br />
<label>작성자</label>
<input type="text" name="writer" /><br />
<label>내용</label>
<textarea cols="50" rows="5" name="content"></textarea><br />
<!--<button type="submit">작성</button> -->
</form>
</body>
</html>
BoardController 에 추가
// 게시물 상세 조회
@GetMapping("/view")
public void getView() throws Exception{
}
확인하기
list.jsp 수정
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 목록</title>
</head>
<body>
<table>
<thead>
<tr>
<th>번호</th>
<th>제목</th>
<th>작성일</th>
<th>작성자</th>
<th>조회수</th>
</tr>
</thead>
<tbody>
<c:forEach items="${list}" var="board">
<tr>
<td>${board.bno}</td>
<td><a href="/board/view?bno=${board.bno}">${board.title}</a></td>
<td>${board.regDate}</td>
<td>${board.writer}</td>
<td>${board.viewCnt}</td>
</tr>
</c:forEach>
</tbody>
</table>
</body>
</html>
테스트하기
게시물 조회하는 mapper 작성
<!-- 1개 아이디에 해당하는 게시글 조회 -->
<select id="view" parameterType="int" resultType="com.board.domain.BoardVO">
SELECT bno, title, content, writer, regDate, viewCnt
FROM tbl_board
WHERE bno = #{bno}
</select>
BoardDAO
//게시글 조회
public BoardVO view(int bno) throws Exception;
BoardDAOImple
//게시글 조회
@Override
public BoardVO view(int bno) throws Exception {
return sqlTemplate.selectOne("board.view", bno);
}
BoardService
//게시글 조회
public BoardVO view(int bno) throws Exception;
BoardServiceImple
//게시물 조회
@Override
public BoardVO view(int bno) throws Exception {
return boardDAO.view(bno);
}
BoardController.
// 게시물 상세 조회
@GetMapping("/view")
public void getView(@RequestParam("bno") int bno, Model model) throws Exception{
BoardVO vo = boardService.view(bno);
model.addAttribute("view", vo);
}
이 전에 했던 예제들은
map 을 이용해서 모든 자료들을 다 불러오는 형태였고,
이번 예제는 bno만 불러오게 한거임
그래서 만약 자료가 없으면 오류가 남
BoardVO 객체에 담는다.(타입)
model에 view라는 이름으로 담아서 view페이지에 전달할거임
view.jsp 수정
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>게시물 조회</title>
</head>
<body>
<h2>${view.title}</h2>
<hr />
<div class="writer">
<span>작성자 : </span>${view.writer}
</div>
<hr />
<div class="content">${view.content}</div>
<hr />
</body>
</html>
테스트하기
'BACKEND > Spring' 카테고리의 다른 글
게시판 만들기 - 메뉴 모듈화 include,날짜 format (0) | 2023.10.23 |
---|---|
게시판 만들기 - modify.jsp(수정 페이지) 및 DAO,Service, Controller (1) | 2023.10.23 |
게시판 만들기 - write.jsp(게시물 작성) , mapper (0) | 2023.10.23 |
게시판 만들기 - mapper만들어서, DAO와 Service,Controller연결 (0) | 2023.10.23 |
게시판 만들기 - list.jsp 목록 페이지 및 BoardController (0) | 2023.10.23 |