프로젝트를 했을 때 maven으로 게시판을 만들었지만 꽤 시간이 지나기도 해서 다시 만들면서 복습해보기로 한다.
프로젝트 이름을 입력하고 Spring Legacy Project -> Spring MVC Project를 선택한다.
컨트롤러의 경로를 입력해준다.
그러면 이렇게 폴더와 파일이 생성된다.
사실 dto를 적고 있던 도중에 블로그에 올리자고 생각했던 거라서 이미 만들어져 있지만.... dto/model/service패키지는 따로 만들어줘야 한다.
pom.xml세팅은
<!-- oracle -->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc8</artifactId>
<version>18.0.0</version>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.3</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
<!-- file upload -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.2</version>
</dependency>
이렇게 추가했다.
아마 파일 업로드 기능도 넣을 것 같아서 추가했다.
이 시점에 프로젝트를 실행해보면 HomeController.java가 실행되어 home.jsp가 뜬다.
이제 db를 생성한다.
SQLplus를 켜서 로그인하고 boardtest 테이블을 생성하고 컬럼을 추가한다.
그런데 만들고보니 ip까진 필요없을 것 같아서 지웠다...
그리고 시퀀스 설정을 해준다.
시퀀스란?
데이터가 입력되는 순서를 자동으로 생성할 수 있는 오브젝트이다.
1로 시작하고 1씩 증가하도록 설정했다.
다시 스프링으로 돌아와서 db에 입력했던 컬럼을 dto파일에 적어주자.
기존에는 이 뒤에 우클릭-source-Generate Getters and Setters를 눌러서 getter와 setter를 추가해주었다.
그런데 프로젝트를 하면서 이 친구가 있다는걸 알게 되었고, 그 때는 사용하지 못했지만 이번에 사용해보기로 했다.
Lombok 롬복이란? Java 라이브러리로 반복되는 getter, setter, toString .. 등의 반복 메서드 작성 코드를 줄여주는 코드 다이어트 라이브러리이다.
더 자세한 설명과 출처: https://cheershennah.tistory.com/183
이것을 메이븐에 설치하기 위해서는 pom.xml에 의존성을 추가하고
<!--Lombok-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
<scope>compile</scope>
</dependency>
롬복이 설치된 경로를 복사해 cmd 창에 붙여넣기한 후 롬복파일을 실행한다.
나는 java -jar lombok-1.18.12.jar 버전이었는데 혹시 보시는 분들은 버전에 맞게 설정하시길...
그러면 이런 창이 뜨는데 이클립스에 체크되어있지만 진행중인 프로젝트는 STS로 하고있어서 무시하고 형광펜칠한 곳을 클릭해 STS를 클릭한다.
그 후 install/update를 클릭한다.
그리고 STS를 껐다켜면.....
내가 쓴건 @Getter @Setter 어노테이션 뿐인데 모든 getter와 setter가 작성되어 있는 것을 볼 수 있다!
차라리 롬복 사용법을 따로 포스팅하는게 좋았겠다는 생각이 이제서야 들지만 ^_ㅜ
포스팅이 길어져서 일단은 여기서 컷하기로!
'Study > spring' 카테고리의 다른 글
[JPA] Error: 1364: Field 'id' doesn't have a default value 오류 해결 (0) | 2023.06.20 |
---|---|
스프링 핵심 원리 강의 정리 1 - 객체지향 (0) | 2022.12.23 |
[SpringBoot] 스프링부트 프로젝트 만들기 (0) | 2022.11.29 |
Spring 에러 - org.springframework.jdbc.datasource.DriverManagerDataSource (0) | 2022.09.25 |
[spring] MyBatis를 사용하여 게시판 만들기 (0) | 2022.06.02 |