jspblog : board list

This commit is contained in:
kim
2021-01-21 15:01:54 +09:00
parent cffbd128a6
commit fa8905715f
6 changed files with 59 additions and 10 deletions

View File

@@ -5,7 +5,7 @@ import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.time.LocalDateTime; import java.sql.Timestamp;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@@ -18,5 +18,5 @@ public class Board {
private String title; private String title;
private String content; private String content;
private int readCount; private int readCount;
private LocalDateTime createDate; private Timestamp createDate;
} }

View File

@@ -5,7 +5,10 @@ import com.example.jspblog.domain.board.dto.WriteReqDto;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
public class BoardDao { public class BoardDao {
public int write(WriteReqDto dto) { public int write(WriteReqDto dto) {
@@ -30,4 +33,36 @@ public class BoardDao {
} }
return -1; return -1;
} }
public List<Board> findAll() {
String sql = "select * from board order by id desc";
Connection conn = DB.getConnection();
PreparedStatement pstmt = null;
ResultSet rs = null;
List<Board> boards = new ArrayList<>();
if (conn != null) {
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
Board board = Board.builder()
.id(rs.getInt("id"))
.title(rs.getString("title"))
.content(rs.getString("content"))
.readCount(rs.getInt("readCount"))
.userId(rs.getInt("userId"))
.createDate(rs.getTimestamp("createDate"))
.build();
boards.add(board);
}
return boards;
} catch (Exception e) {
e.printStackTrace();
} finally {
DB.close(conn, pstmt, rs);
}
}
return null;
}
} }

View File

@@ -1,8 +1,11 @@
package com.example.jspblog.service; package com.example.jspblog.service;
import com.example.jspblog.domain.board.Board;
import com.example.jspblog.domain.board.BoardDao; import com.example.jspblog.domain.board.BoardDao;
import com.example.jspblog.domain.board.dto.WriteReqDto; import com.example.jspblog.domain.board.dto.WriteReqDto;
import java.util.List;
public class BoardService { public class BoardService {
private final BoardDao boardDao; private final BoardDao boardDao;
@@ -14,4 +17,8 @@ public class BoardService {
public int 글쓰기(WriteReqDto dto) { public int 글쓰기(WriteReqDto dto) {
return boardDao.write(dto); return boardDao.write(dto);
} }
public List<Board> 글목록보기() {
return boardDao.findAll();
}
} }

View File

@@ -1,5 +1,6 @@
package com.example.jspblog.web; package com.example.jspblog.web;
import com.example.jspblog.domain.board.Board;
import com.example.jspblog.domain.board.dto.WriteReqDto; import com.example.jspblog.domain.board.dto.WriteReqDto;
import com.example.jspblog.domain.user.User; import com.example.jspblog.domain.user.User;
import com.example.jspblog.service.BoardService; import com.example.jspblog.service.BoardService;
@@ -13,6 +14,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSession;
import java.io.IOException; import java.io.IOException;
import java.util.List;
@WebServlet("/board") @WebServlet("/board")
public class BoardController extends HttpServlet { public class BoardController extends HttpServlet {
@@ -32,7 +34,7 @@ public class BoardController extends HttpServlet {
switch (cmd) { switch (cmd) {
case "writeForm": { case "writeForm": {
if (principal != null) { if (principal != null) {
response.sendRedirect("board/writeForm.jsp"); request.getRequestDispatcher("board/writeForm.jsp").forward(request, response);
} else { } else {
response.sendRedirect("user/loginForm.jsp"); response.sendRedirect("user/loginForm.jsp");
} }
@@ -56,6 +58,10 @@ public class BoardController extends HttpServlet {
} }
break; break;
} }
case "list" :
List<Board> boards = boardService.글목록보기();
request.setAttribute("boards", boards);
request.getRequestDispatcher("board/list.jsp").forward(request, response);
} }
} }
} }

View File

@@ -19,13 +19,14 @@
<div class="progress-bar" style="width: 70%"></div> <div class="progress-bar" style="width: 70%"></div>
</div> </div>
<div class="card col-md-12 m-2"> <c:forEach var="board" items="${boards}">
<div class="card-body"> <div class="card col-md-12 m-2">
<h4 class="card-title">제목</h4> <div class="card-body">
<a href="#" class="btn btn-primary">상세보기</a> <h4 class="card-title">${board.title}</h4>
<a href="${pageContext.request.contextPath}/board?cmd=detail&id=${board.id}" class="btn btn-primary">상세보기</a>
</div>
</div> </div>
</div> </c:forEach>
<br /> <br />
<ul class="pagination justify-content-center"> <ul class="pagination justify-content-center">
<li class="page-item disabled"><a class="page-link" href="#">Previous</a></li> <li class="page-item disabled"><a class="page-link" href="#">Previous</a></li>

View File

@@ -1,5 +1,5 @@
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<% <%
request.getRequestDispatcher("board/list.jsp").forward(request, response); request.getRequestDispatcher("board?cmd=list").forward(request, response);
%> %>