인텔리제이 유료버전(trial)에는 New Project에 Spring Initializer가 있다
그래서 편하게 dependencies를 추가할수있다.
type은 Gradle - Groovy 로 설정
참고로 Gradle은 Gradle은 오픈소스 빌드 자동화 툴
Name이나 Group, Artifact, Package name 만 자신의 프로젝트에 맞게 수정한다음
Next 해준다
Spring Boot 2.7.9 로 설정해주고
아래 5개를 검색해서 추가해준다
- Spring Web
MVC패턴+톰캣서버+RESTful 을 지원하는 라이브러리
- Spring Data JPA
JPA란 Java Persistence API의 약자이며 자바의 ORM을 위한 표준 기술로 Hibernate, Spring JPA, EcliplseLink 등 과 같은 구현체가 있고 이것의 표준 인터페이스가 JPA 입니다.
ORM(Object-Relational Mapping)이란 자바의 객체와 관계형 DB를 맵핑하는 것으로 DB의 특정 테이블이 자바의 객체로 맵핑되어 SQL문을 일일이 작성하지 않고 객체로 구현할 수 있도록 하는 프레임워크입니다.
JPA의 장점으로, SQL 위주의 Mybatis 프로젝트와 비교하여 쿼리를 하나하나 작성할 필요도 없어 코드량이 엄청나게 줄어듭니다. 또한 객체 위주로 코드가 작성되다 보니 가독성도 좋고, 여러 가지 요구사항으로 기능 수정이 발생해도 DB부터 더 간편하게 수정이 가능합니다. 또한 Oracle, MySQL 등 DB 벤더에 따라 조금씩 다른 SQL 문법 때문에 애플리케이션이 DB에 종속될 수밖에 없었는데, JPA는 직접 쿼리를 작성하는 것이 아니라서 DB 벤더에 독립적으로 개발이 가능합니다.
Spring Data JPA는 JPA를 더 쉽게 사용하기 위한 Spring Data 프레임워크의 한 파트로 JPA를 이용한 구현체를 더 추상화시켜 더 쉽고 간편하게 JPA를 이용한 프로젝트를 개발할 수 있게 해 주는 Spring 모듈입니다.
- MySQL Driver
mysql 연결을 위한 드라이버 설치
- Lombok
Java 라이브러리로 반복되는 getter, setter, toString .. 등의 반복 메서드 작성 코드를 줄여주는 코드 다이어트 라이브러리 이다.
Lombok은 여러 어노테이션(@)을 제공하고 이를 기반으로 반복 소스코드를 컴파일 과정에서 생성해주는 방식으로 동작하는 라이브러리이다.
- Thymeleaf
뷰 템플릿 엔진으로 컨트롤러가 전달하는 데이터를 이용하여 동적으로 화면을 구성할 수 있게 해준다
create 을 누르고 기다리면
아래와 같이 기본세팅(?)이 완료된다
'웹 개발 > 🍃 SpringBoot' 카테고리의 다른 글
SpringBoot | Controller - PageController (0) | 2023.03.27 |
---|---|
SpringBoot | REST API, HTTP Method (0) | 2023.03.21 |
SpringBoot | MVC패턴 (0) | 2023.03.21 |
SpringBoot | 세팅(2) (0) | 2023.03.05 |
Spring | 스프링역사,객체지향방법론 (0) | 2022.12.05 |