Spring
스프링 - JSP에서 DB에 저장된 값 불러오기
마루설아
2025. 5. 31. 14:57
지금까지 실습한 스프링 jsp 소스 중 일부
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<table class="table table-striped table-bordered table-hover">
<thead>
<tr>
<th>#번호</th>
<th>제목</th>
<th>작성자</th>
<th>작성일</th>
<th>수정일</th>
</tr>
</thead>
<c:forEach items="${list}" var="board">
<tr>
<td><c:out value="${board.bno}" /></td>
<td><c:out value="${board.title}" /></td>
<td><c:out value="${board.writer}" /></td>
<td><fmt:formatDate pattern="yyyy-MM-dd" value="${board.regdate}" /></td>
<td><fmt:formatDate pattern="yyyy-MM-dd" value="${board.updateDate}" /></td>
</tr>
</c:forEach>
</table>
그리고 메인 컨트롤러 일부
@Controller
@Log4j
@RequestMapping("/board/*")
@AllArgsConstructor
public class BoardController {
private BoardService service;
@GetMapping("/list")
public void list(Model model) {
log.info("list");
model.addAttribute("list", service.getList());
}
...
프로세스 요약
1. /board/list 주소 호출 시 컨트롤러에서 'list'모델에 service.getList()에서 리턴된 결과를 담는다.
2. JSP에서 ${list}로 'list'모델에 저장된 값을 꺼낸다.
3. c:forEach 구문으로 list에 저장된 값의 배열을 순차적으로 반복 출력한다.
c:, fmt: 에 관련한 정보
우선 jsp파일의 상단에 있는 아래 선언을 보자.
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
이는 JSTL(JavaServer Pages Standard Tag Library), 즉 JSP에서 Java 코드를 작성하기 위한 라이브러리이다.
두 JSTL을 선언하면 여러 태그를 사용할 수 있다.
그 중 예제에서 사용된 태그 3가지에 대한 설명은 아래와 같다.
<c:forEach>
리스트, 배열같은 컬렉션을 반복해서 하나씩 처리할 떄 사용한다.
<c:out>
HTML에 데이터를 출력할 때 사용한다.
<fmt:formatDate>
날짜 데이터를 지정한 포맷으로 바꿔줄 때 사용한다.
결과 페이지