Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- FIle
- degit
- 함수
- 왕초보
- parcel
- java
- 숫자
- snowpack
- 버전일치
- 쿠키
- sub query
- 오버라이드
- 미니게임
- 시큐어코딩
- SQL
- 게시판
- Spinner
- kotlin
- webpack
- java#왕초보
- 스타일보험
- 답글
- git
- Spring
- React
- 코틀린
- Android
- 안드로이드
- 스프링
- 상속
Archives
- Today
- Total
YSHUSH
게시판3. 상세 글 보기 + 최신글 역순 정렬 본문
자바스크립트에서
<script type="text/javascript">
location.href = "bbslist.do"; -> GET
</script>
이렇게 이동하는 것은 무조건 GET방식으로 이동한다!
하지만 form형식으로 이동하는 것(자바스크립트)은
<form id="frm" action="regiAf.do" method="post">
method = "---" 에 적힌 방식으로 이동하기 때문에 주의해서 사용하도록 하자
1. BbsController 1차 업데이트
@RequestMapping(value = "bbsdetail.do", method = RequestMethod.GET)
public String bbsdetail(int seq) {
logger.info("BbsController bbsdetail() " + new Date());
System.out.println("seq:" + seq);
// DB -> BbsDto
// 짐싸!
return "bbsdetail";
}
2. Bbs.xml
<select id="getBbs" parameterType="java.lang.Integer" resultType="mul.camp.a.dto.BbsDto">
SELECT SEQ, ID, REF, STEP, DEPTH, TITLE, CONTENT, WDATE, DEL, READCOUNT
FROM BBS
WHERE SEQ=#{seq}
</select>
3. BbsDao, BbsDaoImpl
BbsDao
int writebbs(BbsDto dto);
BbsDaoImpl
@Override
public BbsDto getBbs(int seq) {
return session.selectOne(ns + "getBbs", seq); // 여기서 seq는 Bbs.xml의 getBbs의 parameterType로 들어가는 것임
}
4. BbsService, BbsServiceImpl
BbsService
BbsDto getBbs(int seq);
BbsServiceImpl
@Override
public BbsDto getBbs(int seq) {
return dao.getBbs(seq);
}
5. BbsController 2차 업데이트
@RequestMapping(value = "bbsdetail.do", method = RequestMethod.GET)
public String bbsdetail(Model model, int seq) {
logger.info("BbsController bbsdetail() " + new Date());
System.out.println("seq:" + seq);
// DB -> BbsDto
BbsDto bbs = service.getBbs(seq);
// 짐싸!
model.addAttribute("bbs", bbs);
return "bbsdetail";
}
6. views폴더에 bbsdetail.jsp만들고 형식 업데이트
<%
BbsDto bbs = (BbsDto)request.getAttribute("bbs"); // 짐풀어
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
</head>
<body>
<h1>상세글보기</h1>
<div align="center">
<table class="table table-bordered" style="width: 1000px">
<tr>
<th>작성자</th>
<td><%=bbs.getId() %></td>
</tr>
<tr>
<th>제목</th>
<td><%=bbs.getTitle() %></td>
</tr>
<tr>
<th>작성일</th>
<td><%=bbs.getWdate() %></td>
</tr>
<tr>
<th>조회수</th>
<td><%=bbs.getReadcount() %></td>
</tr>
<tr>
<th>정보</th>
<td><%=bbs.getRef() %>-<%=bbs.getStep() %>-<%=bbs.getDepth() %></td>
</tr>
<tr>
<th>내용</th>
<td align="center">
<textarea rows="15" cols="100" readonly="readonly"><%=bbs.getContent() %></textarea>
</td>
</tr>
</table>
</div>
</body>
</html>
최신글 역순정렬
Bbs.xml → bbslist부분 업데이트
<select id="bbslist" parameterType="mul.camp.a.dto.BbsParam" resultType="mul.camp.a.dto.BbsDto">
SELECT SEQ, ID, REF, STEP, DEPTH, TITLE, CONTENT, WDATE, DEL, READCOUNT
FROM BBS
ORDER BY REF DESC, STEP ASC
</select>
'Coding > SpringFramework' 카테고리의 다른 글
게시판5. 답글 이미지 넣기 + depth 적용 (0) | 2022.01.28 |
---|---|
게시판4. 답글기능 만들기 (0) | 2022.01.28 |
게시판2. 게시판 목록 & 글쓰기 (0) | 2022.01.25 |
게시판1. 기본 빌드 (0) | 2022.01.25 |
로그인 (0) | 2022.01.24 |