SpringBoot
1. 경량 : spring 자체가 경량컨테이너로 만들어졌지만 현재는 많이 무거워져서 이부분을 보완하기 위해 등장
2. 내장 서버: tomcat을 따로 설치하지 않아도 내부적으로 사용이 가능
3. 의존성 자동관리 : 프로젝트를 만들때 dependency를 추가해서 만들수 있음
4. No XML : xml설정과정의 불편함을 느껴 자바로 관리할수 있도록 구성
▷ spring.io -> project -> spring initializr -> 원하는 설정 후 generate -> 압출해제 후 maven existing projects로 import
▶︎ 이클립스에서 만들 경우 : Spring Starter Project로 만든다.
▶︎ SpringBoot에서는 jsp대신 thymeleaf를 사용하기 때문에 아래처럼 pom.xml에 설정을 해주어야하고, 따로 "webapp/WEB-INF/views" 폴더 만들고 잡아주어야 한다.
▶︎ pom.xml 설정
- tomcat-embed-jasper : jsp 연동을 위해 설정
- jstl : jstl 태그 설정
- ojdbc6 : 이클립스 내 오라클을 쓰면 잘 안되는 경우가 있어서 넣어주고, datanucleus를 레포지토리에 잡아준다.
- spring-boot-devtools : 매번 Spring Boot App(스프링부트에 Run as와 같음)해주지 않고 브라우저에서 새로고침만 해도 되도록 설정
- datanucleus
▶︎ src/main/resources/application.properties에서 아래와 같이 springBoot관련 설정을 해준다.
* 설정이 간단한 만큼 추상화되어있고 수정이 어렵다 -> 개발자가 원하는 방식으로 변경하는 데에도 어려움이 있다.
# server
server.port=8787
#encoding
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.enabled=true
server.servlet.encoding.force=true
# view
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
# resources
spring.mvc.static-path-pattern=/resources/**
# jdbc
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:xe
spring.datasource.username=kh
spring.datasource.password=kh
# mybatis alias
▶︎SpringBoot의 경로는 locathost:8787/ 이렇게 잡히기 때문에 view에서 href 경로를 "/hello"이렇게 잡아주어도 연결된다.
▶︎ 동일한 url 명칭으로 여러 컨트롤러에서 사용하게 되는 경우 Controller에 @RequestMapping("/myboard")이렇게 걸어주고,
jsp에서 호출할때 "/myboard/list" 또는 "./list" 로 해주면 맞는 url을 찾아갈 수 있다.
'Web > Spring' 카테고리의 다른 글
[Spring]SpringBoot03_JPA (0) | 2020.11.11 |
---|---|
[Spring]SpringBoot02_Thymeleaf: utility, expression, params.. (0) | 2020.11.11 |
[Spring]MVC_08.jdbc_lamda(익명함수) (0) | 2020.11.07 |
[Spring]MVC_07.update (0) | 2020.11.07 |
[Spring]MVC_06.file (0) | 2020.11.06 |