spring Boot 설정, 기본 설명

김지민·2023년 6월 26일

spring Boot

목록 보기
2/9

spring Boot

spring Legacy 보다는 환경설정이 간단함.

설정 방법

-> 이클립스 help > 마켓 플레이스 > 검색 sts > spring tools ver 4 install > (변경 없이 그대로)

ver 4:
스프링 레거시 프로젝트 만들수 있는 기능 제거됨.
==> 기능 축소.
=> 이클립스 버전과 맞아야 함.

spring Boot 상세 설명

new > project > spring Boot > 스피링 스타터 프로젝트

: type = 프로젝트 타임
( 그래이들,Gradle: 프로젝트 의존성, 버전 관리 빌드 툴,
=> 그루비, 커틀린(자바와 유사/최근 made): 언어
메이븐: 프로젝트 자동 빌드, 버전 관리 => xml로 설정.)
: packaging = jar(java 아카이브), war(웹 아카이브)
==> 두 가지 형식으로 프로젝트 배포 가능
war: 혼자는 실행이 안됨. 톰캣이 필요.
jar: jre만 설치되어있으면 어디서든 실행 가능함.(어느곳이든지 실행 가능) + 톰캣 기능이 포함 (마이크로 서비스)
:version = 개인 설정 가능
:package = 기본 페키지

next
:spring Boot Version = 가장 최근 것 사용하기. SNASPSHOT - 개발 중임

: 필요한 라이브러리들을 선택

==>
1. Developer Tools - spring Boot Devtools, Lombok
2. Web - spring Web ( core, context, mvc 자동 선택)
3. Template Engines - Thymeleaf: 서버/ 클라이언트에서 html을 만들어 주는 툴. 즉, jsp 역할을 대신해줌

  • jar파일은 jsp를 사용할 수 없음
    : jsp의 역할은 html을 만들어 주는 것.(응답으로 내려감)
    ==> 서버에서 jsp 컴파일하여 java 파일 생성 java 컴파일러 에서 class 파일로 이것이 html을 만들어 주는 과정 즉, 톰캣이 필요함.
    jar에서는 다음과 같은 과정을 할 수 없음.
    스피링 부트에서는 jsp 사용할 수 있지만 확장자가 war이어야 함.
    동작 방식(톰캣 필)
    jsp
    : 동작 원리=> jsp -> java -> class -> html
    : 컴파일이 안 되어 있음. 그래서 jar파일에 못 들어감.
    jar : 컴파일이 끝난 class 파일(정적인 클래스들(static 리소스들: 더 이상 변경이 안되는 파일들)만 압축파일로 묶여있음)
    ==> 템플릿 사용함(컴파일 완료).
  1. SQL - Spring Data JPA(마이바티스 대신), Oracle Driver

####기본적 세팅

#####프로젝트 생성 결과

성공!!

프로젝트이름 + application.java 자동 생성.
temlates: 뷰 담당.파일
static: 이미지, js, css


중요. buile.gradle 설명

의의
빌드 자동화 툴에서 사용하는 파일. 라이브러리 자동화 툴에서 작동하는 파일

id 'org.springframework.boot' version '3.1.1'
id 'io.spring.dependency-management' version '1.1.0'

io.spring.dependency-management: dependencies의 버전 관리 자동해줌



하단의미함.



configurations {
	compileOnly {
		extendsFrom annotationProcessor
	}
}

@ 사용.


build.gradle/dependencies 설명

implementation 'org.springframework.boot:spring-boot-starter-web'

spring-boot는 의존성을 추가할 필요 없이 기본 기능들을 가지고 있음.

implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

jpa, hikari에 관련한 라이브러리 자동 추가
=> 데이터 관련 기능
(단, DB는 따로 설정하기)

implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'

화면 관련 기능.

implementation: xml 파일에서 빌드할 때 사용하고, 포함되는 라이브러리 -> jar 파일에
compileOnly: jar 파일에 포함 안됨
developmentOnly: 개발 시에만 사용 realse 할 떄는 사용 안 함.
runtimeOnly: 실행할때만 사용.
testImplementation: Junit에서만 사용 가능함.

(그룹 아이디):(아티팩터 아이디): [버전]


encoding

이미지의 properties에서 encoding 설정 위해 설정함.

property에서 설정

text 선택 후 default encoding UTF-8 변경 후 업뎃


선택되어 있는 부분에 encoding 변경.

application.prperties (환경 설정 파일)에 작성하기


실행 법

실행시 로그 출력.

  • Tomcat initialized with port(s): 8090 (http)
    : SpringApplication에서 자동으로 톰캣 시작함. port 번호는 8090으로 변경함.

  • Initialized JPA EntityManagerFactory for persistence unit 'default'
    : 데이터베이스와의 연결 및 필요한 설정을 설정 파일에서 읽어들여 EntityManagerFactory를 생성하고 구성, EntityManagerFactory를 사용하여 엔티티를 관리하고 데이터베이스와 상호작용

  • LiveReload server is running on port 35729
    : 코드 수정시 바로 수정된 내역이 반영이 됨.



-> 톰캣 라이브러리를 포함하고 있음.
=> 즉, 톰캣 기능 자체가 실행이 가능하여 따로 웹 서버가 필요 하지 않음.

profile
한 단계씩 차근차근

0개의 댓글