[TIL] 23.04.12 스프링
부트시작 롬복?
Spring Tools 4 for Eclipse를 다운받자
레거시는 sts3 스타터는 4
jar 다운받으면
cmd에서 java -jav ~~
>java -jar spring-tool-suite-4-4.18.0.RELEASE-e4.27.0-win32.win32.x86_64.self-extracting.jar
퀀텀db설치
롬복설치
롬복.jar를 본인 워크스페이스에 놓는다.
cmd에서 써주고 sts4설치위치 찾고 설치 눌러준다
의존성 추가
Spring Boot DevTools
Lombok
Spring Web
부트에서는 스캔설정을 메인에서 합니다.
실행은 프로젝트 우클릭 - run as - sprint boot app
application.properties에서 serve.port=1234로 해주면 포트바꿀수있음
컴포넌트 스캔할때 componentscan({"dfsf.dsfsdf"})
sts4는 jstl 깔아줘야함.(의존성추가)
jasper나 embed나 비슷하다?
https://mvnrepository.com/artifact/org.apache.tomcat.embed/tomcat-embed-jasper
embed는 버전 지우고 <scope>provided</scope> 붙여준다.
https://mvnrepository.com/artifact/jstl/jstl
livereload란? 모름
jsp세팅
jsp 적용하기위해 application.properties에가서
spring.mvc.view.prefix=/WEB-INF/board/
spring.mvc.view.suffix=.jsp
spring.devtools.livereload.enabled=true
버전 충돌이 있어서 부트는 2.~버전을 이용한다.
컨트롤러에서 루트에서 다른 화면으로 이동
model.setViewName("redirect:sist/home");
스프링 부트 선생님이 주신 설명자료
스프링부트
스프링부트의 특징
스프링부트는스프링의서브프로젝트라고할수있다
기존의 스프링 개발방식에서 불편했던 설정이나 버전충돌등의 불편했던점들을 없애는대신에
빠르고쉬운 서버환경과 테스트환경등을 한꺼번에 제공해서 훨씬 간편한 개발환경을 마련하게되었다
특징
1. 자동화된라이브러리 – 간단하게처리
2. 자동설정
3. 적당한라이브러리자동결정과 XML 없는환경구축
4. 테스트환경과내장톰켓
===============================================================
properties 속성 설명
▶ pom.xml
- jasper,jstl을 의존성에 추가해야 JSP파일의 구동이 가능하다.
( jsp 파일은 Springboot의 templates 폴더안에서 작동하지 않으니 참고하자.)
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
- 톰캣기반 자바 웹어플리케이션에서는 보안상 jsp 위치를 URL로 직접접근할 수 없는 WEB-INF폴더 아래 위치시킨다.
spring.mvc.view.prefix=/WEB-INF/board/
spring.mvc.view.suffix=.jsp
application.properties
※ Spring 애플리케이션 시작시 application.properties 파일에 정의된 내용을 로드한다.
(스프링부트의 AutoConfiguration을 통해 자동 설정한 속성값들이 존재하며, application.properties의 해당 값들은 오버라이드 한다.)
▶ server.port
- 별다른 설정을 하지 않으면 default 포트는 8080이다.
- Spring Boot에 기본적으로 내장되어있는 Tomcat과 Jetty와 같은 WAS의 포트번호를 임의로 변경 할 수 있다.
server.port = 8888
▶ prefix/suffix
- jsp 페이지를 처리하기 위한 prefix와 suffix를 application.properties에 추가 하자.
- 앞서 생성한 JSP 경로를 prefix로 선언, 그리고 확장자를 suffix로 선언할 수 있다.
spring.mvc.view.prefix=/WEB-INF/board/
spring.mvc.view.suffix=.jsp
컨트롤러에서 ModelAttribute로 dto를 넘길때 return "string"으로 Model이용안하고 주소만줄때는
jsp에서 타입 앞글자 소문자로 적고 .속성으로 접근하거나
@ModelAttribute(value="ss") 이렇게적고 jsp에서 ss.속성명 이렇게 접근한다.