프로그래밍/Spring

스프링 부트 게시판 만들기3 - JSP 사용하기

dev109 2016. 10. 17.
반응형

관련글 : 

스프링 부트로 게시판 만들기1 - 프로젝트 생성

스프링 부트로 게시판 만들기2 - MyBatis, MySQL 연동




JSP 사용을 위한 설정 변경

스프링 부트를 이용하는 경우 화면을 처리하기 위해서는 기본적으로 JSP가 아닌 템플릿을 이용합니다. 스프링 부트는 JSP가 기본적으로 설정되어 있지 않기 때문에 JSP를 사용하려면 몇 가지 설정이 필요하기 때문에 JSP사용을 위해 설정을 해보도록 할게요.



JSP 사용을 위해 두 가지 설정을 변경 해야 합니다. 1) application.properties의 설정 변경, 2) Tomcat 서버의 JSP 설정 변경



application.properties의 설정 변경

폴더 구성입니다. 프로젝트 내의 src 폴더내에 main폴더가 있는데 그 안에 webapp/WEB-INF/views 폴더를 생성해주세요.



그리고 application.properties 파일을 변경해줍니다.

1
2
3
4
5
6
7
8
spring.datasource.driver-class-name= com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/database이름
spring.datasource.username=mysql아이디
spring.datasource.password=mysql
 
 
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
cs



prefix에는 경로를 지정해줄 수 있고, suffix는 파일 확장자 .jsp를 찾아줍니다.




build.gradle 파일에서 dependencies 부분에 JSP사용 시 필요한 jstl과 JSP를 처리하는 엔진 역할을 하는 tomcat-embed-jasper 라이브러리를 추가해줍니다.

1
2
compile('org.apache.tomcat.embed:tomcat-embed-jasper')
compile('javax.servlet:jstl')
cs


저장 후 프로젝트 우클릭 - Gradle(STS) - Enable Dependency Management 선택 후 다시 우클릭 Gradle(STS) - Refresh Dependencies




설정이 완료되었으면 간단한 컨트롤러를 작성해보고 JSP를 테스트 해봐야겠지요?

이전 포스트에서 사용했던 BoardListController를 수정하여 사용해보겠습니다.


BoardListController.java

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
package com.board.controller;
 
import java.util.List;
 
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
 
import com.board.domain.BoardVO;
import com.board.mapper.BoardMapper;
 
@RestController
public class BoardListController {
 
    @Autowired
    private BoardMapper boardMapper;
    
    @RequestMapping("/board")
    public ModelAndView board() throws Exception{
        List<BoardVO> board = boardMapper.boardList();
        return new ModelAndView("boardList","list",board);
    }
}
 
cs





위에서 생성한 views 폴더에 boardList.jsp 파일을 생성한 뒤 다음처럼 작성합니다.

1
2
3
4
5
6
7
8
9
10
11
12
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>게시글 목록</title>
</head>
<body>
    <h3>게시글 목록 : ${list}</h3>
</body>
</html>
cs




다 작성한 후 저장을 하고 프로젝트를 실행한 뒤 http://localhost:8080/board 로 요청을 하면 다음과 같은 화면이 나옵니다.




간단하죠? 

이번 포스트 내용은 짧은 것 같아서 게시글 목록/작성/수정/삭제 까지 하려고 했는데 작성하다 보니 너무 길어지네요;

다음 포스트에서 이어가겠습니다.








반응형

댓글

💲 추천 글