본문 바로가기
Spring

[Spring] 개발환경

by dong_seok 2023. 8. 5.

이번에 학교 사람들과 같이 홈페이지를 만들게 되면서 처음으로 Spring을 사용해 보게 되었습니다.

처음 사용해 보는만큼 어려운 부분이 많았고 아직까지도 잘 이해가 되지 않은 부분들이 많아서 글을 쓰면서 천천히 이해해보고 복습해 보도록 하겠습니다.

 

먼저 개발 환경입니다.

 

SDK = 자바 1.8version

DataBase = maria DB

springframework.boot = 2.7.13

빌드툴 = Gradle (Maven : XML, Gradled : build.gradle)

(빌드 스크립트는 Groovy Kotlin 언어로 작성될 수 있는데, 프로젝트를 생성하면 기본으로 Groovy로 작성됩니다.)

스크립트에서는 플러그인, 저장소, 의존성을 설정할 수 있습니다.

 

build.gradle

plugins {
	id 'java'
	id 'org.springframework.boot' version '2.7.13'
	id 'io.spring.dependency-management' version '1.0.15.RELEASE'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'

java {
	sourceCompatibility = '1.8'
}

configurations {
	compileOnly {
		extendsFrom annotationProcessor
	}
}

repositories {
	mavenCentral()
}

dependencies {
	implementation group: 'org.mariadb.jdbc', name: 'mariadb-java-client', version: '2.4.1'
	implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
	implementation 'org.springframework.boot:spring-boot-starter-web'
	implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
	implementation 'org.springframework.boot:spring-boot-starter-validation'
	implementation 'org.springframework.boot:spring-boot-starter-security'
	implementation 'org.springframework.boot:spring-boot-starter-validation'
	implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5'


	annotationProcessor('org.projectlombok:lombok')	

	compileOnly 'org.projectlombok:lombok'

	developmentOnly 'org.springframework.boot:spring-boot-devtools'
	annotationProcessor 'org.projectlombok:lombok'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'

}

tasks.named('test') {
	useJUnitPlatform()
}

dependencies 부분에서 의존성을 추가해줍니다. Spring Boot에서는 starter을 통해 버전 관리를 쉽게 할 수 있도록 도와주기때문에 starter를 사용할 때에는 버전을 따로 명시하지 않아도 됩니다. 기본적인 구성 외에도 이번에 로그인,회원가입 기능을 구현하면서 필요했던 라이브러리들과 관련된 의존성도 추가 했습니다.

 

 

다음은 외부 설정입니다.

외부 설정 파일이란 애플리케이션에서 사용하는 여러가지 설정 값들을 애플리케이션의 밖이나 안에 정의할 수 있는 기능을 말합니다. 프로젝트 생성후 파일을 보면 그림과같이 application.properties 라고 적힌 파일이 있을 것 입니다.

application.properties(외부 설정 파일)

여기서 외부 설정을 관리합니다.  

application.properties 파일은 다음과 같이 만들어졌습니다.

spring.jpa.hibernate.ddl-auto=update
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver //1
spring.datasource.username=root //2
spring.datasource.password=1234 //3
spring.datasource.url=jdbc:mariadb://localhost:3308/board?characterEncoding=UTF-8&serverTimeZone=UTC //4
spring.profiles.include=oauth

1. 스프링부트와 연결하여 사용할 디비 드라이버 설정입니다.

(디비마다 코드가 조금씩 다름)

2.3. 디비 설치할때 설정한 사용자명과 패스워드 입니다.

4.사용할 디비의 포트번호와 디비명을 지정해줍니다.

(포트번호 : 3308 / 디비명 board)

*디비 설치시 포트번호는 기본적으로 3306으로 지정되지만 디비 하나당 포트번호 하나만 사용할 수 있기 때문에 충돌이 일어나지 않도록 포트번호를 3308로 변경해준 것입니다.*

 

기본적인 환경 셋팅을 마쳤고 다음에는 로그인,회원가입 기능들을 구현해 보도록 하겠습니다.

 

참고자료

https://adjh54.tistory.com/216

https://jojoldu.tistory.com/698

'Spring' 카테고리의 다른 글

[Spring] 원시 타입(Primitive Type) vs 참조 타입(Reference Type)  (0) 2023.08.08
[Spring] 회원가입(2)  (0) 2023.08.06
[Spring] 회원가입(1)  (0) 2023.08.06

댓글