스프링 부트는 jsp를 사용하지 않고 html을 사용한다. 내장되어 있는 톰캣 서버도 jsp를 파싱하지 않기 때문이다.
하지만 jsp파일을 사용하여 스프링부트를 쓸 수 있는 방법이 있다.
오늘은 그 방법에 대해 알아보겠다!
pom.xml
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!-- tomcat-embed-jasper -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
먼저 메이븐에서 필요한 라이브러리이다.
버전은 지웠으며, 버전을 지우면 최신 버전으로 자동 다운받아진다.
jasper는 JSP를 파싱시켜주는 기능을 지닌다.
따라서 추가로 dependecy를 통해 의존성을 주입해준다.
application.properties
server.port=8080
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@ip번호:1521:xe
spring.datasource.username=사용자정의
spring.datasource.password=사용자정의
mybatis.mapper-locations=/mybatis/mapper/*.xml
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
위의 3가지 코딩은 바로 지난 글에서 확인했으므로 생략하겠다.
마지막줄의 prefix와 suffix는 jsp의 경로를 고정적으로 지정해준다.
prefix는 폴더, suffix는 파일 확장자명이며 밑에 컨트롤러에서 return값을 반환할 때 연결되게 한다.
JSP 파일 위치 경로
<webapp> 파일을 만들어서
그 안에 <WEB-INF>와 <views> 폴더, 그 안에 jsp파일을 넣어주었다.
그 경로가 위에 입력한 경로인 것이다.
여기까지 스프링 부트에서 JSP 파일을 사용하기 위한 방법이다.
아래는 이를 확인하기 위한 추가 코딩을 입력해주었다.
BoardController
@Controller
public class BoardController {
@RequestMapping(value = "/created.action",method = {RequestMethod.GET})
public ModelAndView created() throws Exception{
ModelAndView mav = new ModelAndView();
mav.setViewName("bbs/created");
return mav;
}
BoardController를 사용하기 위해 먼저 객체생성을 해주고
created.action이 get방식으로 넘어올 때
ModelAndView를 통해 bbs폴더의 created.jsp 파일로 이동하게 해준다.
넘어가는 경로 부분은 prefix와 suffix에서 설정해준 내용이다.
따라서 해당 주소를 입력하면 jsp 파일로 입력한 화면이 출력된다!
정상적으로 스프링 부트에서 jsp파일이 실행된 것을 알 수 있다.
3월 31일 수업🌕
'개발 교육 TIL > back-end' 카테고리의 다른 글
[Node] Express 설치&서버 연결 / post 데이터 및 오류페이지(404) 출력 (0) | 2022.04.04 |
---|---|
[node] 내장모듈 - path, fs (0) | 2022.04.01 |
[Spring Boot] 스프링 부트 - 세팅, DB 연결(SqlSessionFactory, mapper) (0) | 2022.03.30 |
[Spring] 스프링 마이바티스 MyBatis (0) | 2022.03.29 |
[Spring] AOP(Aspect Oriented Programming : 관점지향프로그래밍) (0) | 2022.03.28 |