Sping Boot maven jsp POM spring BOOT jsp

  • Slides: 35
Download presentation

Sping Boot 프로젝트 시작(maven 과 jsp)

Sping Boot 프로젝트 시작(maven 과 jsp)

POM 설정 spring BOOT에서 jsp 지원 의존관계설정 추가 <!-- Spring Boot Jsp Support -->

POM 설정 spring BOOT에서 jsp 지원 의존관계설정 추가 <!-- Spring Boot Jsp Support --> <dependency> <group. Id>org. apache. tomcat. embed</group. Id> <artifact. Id>tomcat-embed-jasper</artifact. Id> <scope>provided</scope> </dependency> <group. Id>javax. servlet</group. Id> <artifact. Id>jstl</artifact. Id> </dependency>

webapp 폴더 생성(jsp View 사용) 1. spring MAVEN 프로젝트 aa 생 성 4. aa

webapp 폴더 생성(jsp View 사용) 1. spring MAVEN 프로젝트 aa 생 성 4. aa aa 프로젝트에서 Home. Controller 복 사 2. aa 프로젝트에서 webapp 폴더 복사 3. 그림과 같이 정리 5. 추가 spring. mvc. view. prefix: /WEB-INF/views/ spring. mvc. view. suffix: . jsp

Controller에서 HTTP response Body로 직접전 송 메소드에 @Response. Body로 어노테이션이 되어 있다면 메소드에서 리턴되는

Controller에서 HTTP response Body로 직접전 송 메소드에 @Response. Body로 어노테이션이 되어 있다면 메소드에서 리턴되는 값은 View 를 통해서 출력되지 않고 HTTP Response Body에 직접 출력한다. @Rest. Controller = @[email protected] Body 1. 수정 - 자바 객체를 HTTP response Body 로 전송 //@Response. Body 2. 실행

View 와 Controller @Controller만 사용되면 return 문에 반환되는 값은 view의 이름이 되고 model의 값이

View 와 Controller @Controller만 사용되면 return 문에 반환되는 값은 view의 이름이 되고 model의 값이 view를 통해서 출력된다. 1. 수 정 @Rest. Controller = @Controller + @Response. Body home. jsp 2. 실행

Thymeleaf Template Engine 선택 Thymeleaf는 순수 HTML에 HTML 5문법을 사용하여 Server side 로직을 수행할

Thymeleaf Template Engine 선택 Thymeleaf는 순수 HTML에 HTML 5문법을 사용하여 Server side 로직을 수행할 수 있는 HTML 태그 및 속성 기반의 Template Engine 전 프로젝트에서 Hello. Controller 복사

Dependencies 설정 확인

Dependencies 설정 확인

Thymeleaf HTML 파일 작성 1. Home. Controller 복 사 2. Home. HTML 파일 생성

Thymeleaf HTML 파일 작성 1. Home. Controller 복 사 2. Home. HTML 파일 생성 (Thymeleaf) 3. 입력(home. jsp 파일에서 수정 가 능) <!DOCTYPE html> <html xmlns: th="http: //www. thymeleaf. org"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></meta> <title>Home</title> </head> <body> xml의 Thymeleaf th: 요소에 네임스페이스 선언 <h 1> Hello world! </h 1> <P> The time on the server is <span th: text="${server. Time}"></span> <div>Thymeleaf version</div> </body> </html> th: 는 thymeleaf에 대한 속성선언으로 server. Time 라는 변수 값으로 <span>안의 값을 대체해버린다. 값이 없는 경 우 <span> 태그는 무시 – 변환 후 HTML과 같아진다. </P>

의존 관계 추가 확인 2. 추가 1. 추가 <repositories> <repository> <id>codelds</id> <url>https: //code. lds.

의존 관계 추가 확인 2. 추가 1. 추가 <repositories> <repository> <id>codelds</id> <url>https: //code. lds. org/nexus/content/gro ups/main-repo</url> </repository> </repositories> <!-- Spring Boot Jsp Support --> <dependency> <group. Id>org. apache. tomcat. embed</group. Id> <artifact. Id>tomcat-embed-jasper</artifact. Id> <scope>provided</scope> </dependency> <group. Id>javax. servlet</group. Id> <artifact. Id>jstl</artifact. Id> </dependency> <!-- Spring Oracle Support --> <dependency> <group. Id>com. oracle</group. Id> <artifact. Id>ojdbc 6</artifact. Id> <version>11. 2. 0. 3</version> <scope>compile</scope> </dependency> <group. Id>org. apache. commons</group. Id> <artifact. Id>commons-dbcp 2</artifact. Id> <version>2. 1. 1</version> </dependency>

OJDBC 6 설정

OJDBC 6 설정

mybatis-spring-boot-starter 기능 Mybatis를 Spring과 함께 사용하기 위해서는 최소한 한 개의 Sql. Session. Factory 와

mybatis-spring-boot-starter 기능 Mybatis를 Spring과 함께 사용하기 위해서는 최소한 한 개의 Sql. Session. Factory 와 최소한 한 개의 Mapper Interface가 필요 mybatis-spring-boot-starter는 다음과 같은 일을 처리한다. l 존재하는 Data. Source 자동감지 l Sql. Seession. Factory. Bean을 사용해서 해당 데이터소스를 전달하는 Sql. Session. Factory의 객체를 생성하고 등록 l Sql. Session. Factory을 이용해 Sql. Session. Template의 객체를 생성하고 등록 l 매퍼들을 자동 스캔한 뒤 스캔된 interfaces나 class들을 Sql. Session. Template에 연결하고 Spring Context에 등록해서 bean에 주입할 수 있게 해준다.

Lombok 설정 @Getter, @Setter 같은 annotation 기반으로 DTO(VO) 클래스를 작성할 때 @Data 어노 테이션등으로

Lombok 설정 @Getter, @Setter 같은 annotation 기반으로 DTO(VO) 클래스를 작성할 때 @Data 어노 테이션등으로 멤버 변수에 대한 Getter/Setter Method, Equals(), hash. Code(), To. String() 메서드들과 멤버 변수에 값을 설정하는 생성자 등등을 자동으로 생성해 주는 라이브러리 Pom에 의존성 추가 : project 생성시 설정 사용자>. m 2 > lombok 설치 1 <dependency> <group. Id>org. projectlombok</group. Id> <artifact. Id>lombok</artifact. Id> <optional>true</optional> </dependency> 3 PS C: Usersjjin. m 2repositoryorgprojectlombok1. 16. 22> java -jar lombok 1. 16. 22. jar 2

Lombok 설치

Lombok 설치

Datasource 와 jsp View 경로 설정 spring. mvc. view. prefix: /WEB-INF/views/ spring. mvc. view.

Datasource 와 jsp View 경로 설정 spring. mvc. view. prefix: /WEB-INF/views/ spring. mvc. view. suffix: . jsp # Oracle settings spring. datasource. driver-class-name= oracle. jdbc. driver. Oracle. Driver spring. datasource. url=jdbc: oracle: thin: @168. 126. 146. 45: 1521: orcl spring. datasource. username=jjin spring. datasource. password=jjinpang spring. datasource. dbcp 2. initial-size= 7 spring. datasource. dbcp 2. max-total= 20 spring. datasource. dbcp 2. pool-prepared-statements= true

Controller, View, Mapper 설정 1. 복사 2. Dto import 경로 확 인

Controller, View, Mapper 설정 1. 복사 2. Dto import 경로 확 인

Mapper 설정 1. 수정 mybatis. mapper-locations=classpath: mybatis/mapper/**/*. xml 2. 삽입 3. 수정

Mapper 설정 1. 수정 mybatis. mapper-locations=classpath: mybatis/mapper/**/*. xml 2. 삽입 3. 수정

실행 및 결과 확인 1. localhost: 8080 2. localhost: 8080/list

실행 및 결과 확인 1. localhost: 8080 2. localhost: 8080/list

Thymeleaf tamplate 작성(Card. List. html)

Thymeleaf tamplate 작성(Card. List. html)

Thymeleaf tamplate 작성(Card. View. html)

Thymeleaf tamplate 작성(Card. View. html)

Thymeleaf 속성

Thymeleaf 속성

Thymeleaf 속성

Thymeleaf 속성