-
(스프링 입문) 1 - 프로젝트 환경설정(프로젝트 생성 + 라이브러리 살펴보기 + View 환경설정 + 빌드하고 실행하기)개발/Spring 2023. 7. 29. 17:55
■ 프로젝트 생성하기
1. 프로젝트 Maven vs Gradle
: 필요한 라이브러리를 가져오고 빌드하는 라이브 사이트까지 관리하는 툴이다.
과거에는 메이븐 많이 사용했지만 요즘은 Gradle 많이 사용한다.
2. 언어 -> 자바 선택
3. 스프링 부트
snapshot : 만들고 있는 중
m1 : 정식 출시된 버전x
4. Project Metadata
- Group : 보통 기업 도메인 적는다.
- Artifact : build 후 결과믈 (프로젝트 명 같은 것)
5. Dependencies (★)
- 어떤 라이브러리 땡겨서 쓸건가
- spring web 선택
- 템플릿 엔진 Thymeleaf 선택 (회사마다 다르다)
다 완료되었다면 하단에 Generate 로 다운받기
압축파일 풀고 해당 파일 넣어보자
폴더에 넣어준 것 중에서 build.gradle 을 열어준다.
구조는 다음과 같다.
자바에는 기본 자바 파일 그 외에 설정 파일은 resources 에 들어간다.
그리고 특히 최근에는 test 가 기본적으로 설치되고, 그 만큼 중요하다는 것이다.
* 에러해결
- No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.1.2 was found. The consumer was configured to find a library for use during runtime, compatible with Java 11, packaged as a jar, and its dependencies declared externally, as well as attribute 'org.gradle.plugin.api-version' with value '8.2.1' but:
다음과 같이 에러가 떴다. 확인해보니 스프링 부트 스타터에서 버전에 따라 맞는 것이 다르다는 것을 확인
3.x 를 다운받았으니 자바 17로 jdk 설정이 필요하다.
아래 사이트 참고하여 해결했다.
나의 경우 그냥 다시 2.x 버전으로 파일 다운으로 변경
그러면 포트가 하나 생긴 것 확인 가능
다음 화면 뜨면 프로젝트 생성이 된 것이다.
톰캣 웹서버 내장하고 있음.
■ 라이브러리 살펴보기
Gradle은 의존관계가 있는 라이브러리를 함께 다운로드 한다.
1. 스프링 부트 라이브러리
spring-boot-starter-web
spring-boot-starter-tomcat: 톰캣 (웹서버) (★)
spring-webmvc: 스프링 웹 MVC (★)spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(View)
spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅
spring-boot
spring-core
spring-boot-starter-logging
logback, slf4j
2. 테스트 라이브러리
spring-boot-starter-test
junit: 테스트 프레임워크 // 최근 junit 5 쓰는 추세
mockito: 목 라이브러리
assertj: 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
spring-test: 스프링 통합 테스트 지원■ View 환경 설정하기
<!DOCTYPE HTML> <html> <head> <title>Hi</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> </head> <body> Hi <a href="/hi">hi</a> </body> </html>
내 버전 참조문서 확인하기
그리고 내가 필요한 부분 있으면 찾아서 참고하여 쓰
컨트롤러에 담아줬던 data 가 html 파일에서 ${data} 가 hi!! 로 치환돼서 나온다.
return 값 hi 는 hi.html 를 찾아서 이 화면을 실행시켜라 라는 뜻이다.
■ 빌드하고 실행하기
dir 명령어로 내부 문서 확인
gradlew 치고 엔터 누르면 다음과 같이 빌드가 성공적으로 된다.
gradlew build 를 통해 만들어주고 dir 통해서 libs dir 생성 확인해준다.
java -jar hi-spring-0.0.1-SNAPSHOT.jar 해당 파일 실행해준다.
'개발 > Spring' 카테고리의 다른 글
(스프링 기본) 6 - spring 으로 전환하기 (0) 2024.10.07 (스프링 기본) 5 - 객체 지향 설계와 스프링 (2) 2024.10.02 (스프링 기본) 4 - 좋은 객체 지향 설계 5가지(SOLID) (1) 2024.10.02 (스프링 입문) 3 - 회원 관리 예제 : 백엔드 개발 (비즈니스 요구사항 정리 + 회원 도메인과 리포지토리 만들기 + 회원 리포지토리 테스트 케이스 작성 + 회원 서비스 개발 + 회원 서비스 테스트) (0) 2023.07.30 (스프링 입문) 2 - 스프링 웹 개발 기초 (정적 컨텐츠 + MVC와 템플릿 엔진 + API) (0) 2023.07.29