웹 개발/Spring
[SpringBoot] 프로젝트 생성 후 설정
개발 기록
2024. 6. 25. 18:04
application.properties 파일에서
spring.application.name=xwx
#server
server.port=9000
#view
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
#encoding
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.force=true
server.servlet.encoding.enabled=true
설정해주기
#server는 서버 실행시 연결하는 포트번호이다
#view는 jsp파일이 들어있는 경로이다
#encoding은 UTF-8로 설정해주었다
springboot에는 내장 tomcat이 있어서 편하지만
내장 톰캣에는 jsp관련 기능이 없다고한다
또한 springboot는 기본적으로 jsp를 지원하지 않는다
즉 pom.xml에 추가해줘야함
<!-- tomcat jsp -->
<!-- https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-jasper -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
버전은 딱히 안적어도 알아서 잡아준다
위의 두가지를 설정하고나서
원하는 jsp페이지를 띄울 수 있다
Controller
package com.xwx;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
@SpringBootApplication
public class XwxApplication {
public static void main(String[] args) {
SpringApplication.run(XwxApplication.class, args);
}
@GetMapping("/main")
public String index() {
return "user/main/main";
}
}
따로 만든 컨트롤러는 아니다
프로젝트를 생성하면
[프로젝트이름 + Application.java] 파일도 같이 생성되는데
@SpringBootApplication 이라는 어노테이션이 붙어있다
(나는 XwxApplication.java 임)
@Controller 어노테이션을 붙여주고
위와같이 원하는 내용을 작성하자
위치는
src/main/java/como/프로젝트이름/
이다
JSP 파일은 application.properties 에서 설정한 경로 아래에 생성하면 된다
application.properties 에서 이미 views까지는 경로를 말해줬기 때문에
Controller에서 return 부분에 views 다음경로부터 적어주었다!
main.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
메인화면입니다.
</body>
</html>
실행시켜보면
Whitelabel Error Page라고 떴던 페이지가
main.jsp 에 적은 내용이 보인다