+++
기본연동문법은 springMVC와 mybatis가 거의 유사함 하지만 이번엔 mybatis의 다른 문법을 해보려고 함
동적sql !!!
이번에 프로젝트하면서 코드 작성하면서 동적으로 sql을 바꿀 수 있는걸 해볼거임
sub_sql << 이걸 my sql에서 그대로 할 수가 있음
문자열로 처리해서 넣어주기 때문에 실수할 수가 있는데 다이나믹 기능 사용시 태그가 있어서
태그만 잘 넘기고 잘 명시만 하면 괜찮다고 함
+++
Tiles를 사용할 경우 우선적으로 TilesController에서 Tiles를 찾음
그러고 없으면 jsp를 찾는 순으로 동작함
+++
tilesconfigurer > tilesdef.xml 경로 지정
tilesviewresolver > layout.jsp를 호출하는데 그 layout을 생성하고 그것을 tilesview가 보여줌
내부적으로 tilesview가 작동(?) 되기 때문에 설정 시 configurer+viewresolver만 설정하면 된다 하셨음
회원등록, 로그인, 글 작성, 댓글 작성 사이트 만들기
<Lombok install>
lombok 사이트
Project Lombok
projectlombok.org
lombok을 install해서 넣을거기 때문에 이클립스에 넣기 위해 검색
1.
이클립스 위 상단바 메뉴 help > install new software
2.
add 클릭 >
name: lombok
location: http://projectlombok.org/p2
add 클릭 >
3.
Lombok 검색되면 체크 (1.18.30 버전)
> next
4.
또 그냥 next
5.
라이센스 동의함 누르고 finish
6.
플러그인이 정상적으로 내려받아지면
restart now를 누르면 됨
시간이 좀 많이 걸림
만약 restart 후 에러가 나면 이클립스 껐다 켰다 반복하면 해결된다 함
Git을 통해 프로젝트를 내려받으면 롬복 설치 작업을 꼭 따로 해줘야 함 !!!!!!!!
설치 중간에 체크해달라는 창 뜨면 그냥 체크
<프로젝트 생성>
1.
new > other > spring starter project >
2.
name: ch15-SpringPage
artifact: SpringPage
description: Spring project for Spring Boot
>next
3.
체크박스 다 체크 +
Lombok
WebSocket (채팅)
>>2개 추가 총 8개
4.
>next>finish 하면 ch15가 생김
<설정파일 - 다운그레이드>
pom.xml
1. 버전 다운그레이드+라이브러리 명시
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.17</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter-test</artifactId>
<version>2.3.1</version>
<scope>test</scope>
</dependency>
<!-- 라이브러리 추가 시작 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-servlet</artifactId>
<version>3.0.7</version>
</dependency>
<dependency>
<groupId>org.apache.tiles</groupId>
<artifactId>tiles-jsp</artifactId>
<version>3.0.7</version>
</dependency>
<!-- 라이브러리 추가 끝 -->
2. 파일업로드 디펜던시 넣기
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.3</version>
</dependency>
3. 유효성 검사 디펜던시 넣기
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
</dependency>
application.yml도 이전 프로젝트에서 src/main/resources에 붙여넣기
application.yml
1. 파일업로드 용량 구문 추가
server:
port: 8000
servlet:
encoding:
charset: UTF-8
enabled: true #http 인코딩 지원을 활성화할지 여부 지정
force: true
tomcat:
max-http-form-post-size: 200MB #톰캣이 허용하는 파일 업로드 사이즈
servlet:
multipart:
max-file-size: 50MB #파일 한 개당 최대 사이즈
max-request-size: 200MB #요청당 최대 파일 크기
저장 후 boot dashboard에서 실행하면 console에 kr.spring.Ch15SpringPageApplication 떠야함
'학원 > spring' 카테고리의 다른 글
1.15 (spring tiles (db연동)- 회원관리 끝 / 게시판 시작) (0) | 2024.01.15 |
---|---|
1.12 (ch15(tiles db파일 저장)-회원가입,로그인,로그아웃,my페이지) (1) | 2024.01.14 |
1.10 (myBatis(boot)-crud/spring-tiles crud) (0) | 2024.01.11 |
1.9 (myBatis-목록,상세,수정,삭제/ myBatis(boot) 설정,대문페이지) (0) | 2024.01.09 |
1.8 (JDBC-글목록,상세,수정,삭제/myBatis-기본설정,글작성,목록,상세) (1) | 2024.01.08 |