Step-by-Step
[Spring] 1. Gradle 프로젝트 생성 본문
- Gradle 프로젝트 생성
- build.gradle 설정
- application.properties 설정
1. 프로젝트 생성

New > Spring Starter Project

Gradle Project / Java 선택

필요한 Dependencies 설정 - 아래에 추가로 설명
※ 참조 : https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#using.build-systems.starters

프로젝트 전체 구조 생성!
2. Build.Gradle

build.gradle
plugins {
id 'org.springframework.boot' version '2.6.5'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'
id 'java'
}
group = 'com.energysolution'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-jdbc'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.2'
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5'
compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'mysql:mysql-connector-java'
annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
}
tasks.named('test') {
useJUnitPlatform()
}
내가 프로젝트 생성시 설정했던 Dependencies가 나타나 있다
- Spring Boot Devtools : 애플리케이션 개발 시 유용한 기능들을 제공하는 모듈
- Spring Configuration Processor : @ConfigurationProperties를 사용을 위한 의존성
- Spring Web : Spring MVC를 사용하여 RESTful을 포함한 웹 애플리케이션 구축 (Tomcat 기본 내장 컨테이너로 사용)
- Spring Security : Spring Security 사용
- Spring Data JPA : Hibernate와 함께 Spring Data JPA 사용
- JDBC API : HikariCP Connection Pool과 함께 JDBC를 사용
- MyBatis Framework : 개발자가 지정한 SQL, 저장 프로시저 그리고 몇 가지 고급 매핑을 지원하는 SQL Mapper
- MySQL Driver : MySQL 사용을 위한 드라이버
- Lombok : Java 기반에서 기계적으로 작성하는 VO, DTO, Entity 관련 작업을 쉽게 해주는 도구
- Thymeleaf : 뷰 탬플릿으로 컨트롤러에서 리턴된 데이터들을 페이지에 동적으로 렌더링
3. Application.Properties

src>main>resources>application.properties
# MySQL 설정
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# DB Source URL
spring.datasource.url=jdbc:mysql://localhost:3306/[DB이름]
# DB username
spring.datasource.username=[username]
# DB password
spring.datasource.password=[password]
# true 설정시 JPA 쿼리문 확인 가능
spring.jpa.show-sql=true
# DDL(create, alter, drop) 정의시 DB의 고유 기능을 사용할 수 있다.
spring.jpa.hibernate.ddl-auto=update
# JPA의 구현체인 Hibernate가 동작하면서 발생한 SQL의 가독성을 높여준다.
spring.jpa.properties.hibernate.format_sql=true
필요한 부분 구글링해서 작성하였고, [대괄호] 부분은 나의 DB 정보이기 때문에 수정해서 작성하였다
아직 프로젝트 생성만 했기 때문에, 차근차근 구현하면서 수정할 예정이다
'프로젝트 > Eggo (Mobile App)' 카테고리의 다른 글
[Spring] 6. 응답표준 (1) (0) | 2022.04.29 |
---|---|
[Spring] 5. Mapper.java와 Mapper.xml 작성 (0) | 2022.04.26 |
[Spring] 4. Service 작성 (0) | 2022.04.15 |
[Spring] 3. DTO 작성 (0) | 2022.03.30 |
[Spring] 2. Controller 작성 (0) | 2022.03.30 |
Comments