이 정리의 목표는
- 내가 모르는것, 반드시 알고 있어야 하는 것 들에 대해서 정리하는 것이다.
- 클론코딩 하듯이 따라하면 나한테 남는게 없다. 따라하면서 다른 방식으로 실행해 보거나 모르는게 있으면 심화 정리를 간단하게 정리해보자.
- 스프링 프로젝트 생성 -> 스프링 부트 웹 서버 실행 -> 회원 도메인 개발 -> MVC 개발 -> DB연동(JDBC, JPA, 스프링데이터 JPA) -> 테스트 케이스 작성 순이다.
1. 프로젝트 환경설정
1 ) 프로젝트 생성
강의는 스프링, JAVA17로 진행한다.
- Spring Web : 웹 프로젝트 만들 때 사용하고 아파치톰캣 컨테이너 내장
- Thymeleaf : HTML을 화면에 출력하는 템플릿엔진 중 하나이다.
IntelliJ IDEA 기준으로 Open as project로 열면 프로젝트가 열린다.
- .idea : IntelliJ 설정파일
- src : main, test로 나뉘어져 있다.
- src / main / java : 실제 자바 소스
- src / main / resources : 자바파일 제외한 설정 파일
- build.gradle : gradle 설정파일
설정파일인 build.gradle 파일을 클릭하면 아래의 사진 같이 구성되어 있다.
- implementation : 항상 적용되는 라이브러리
- testlmplementation : 테스트 코드를 수행할 때만 적용되는 라이브러리(jUnit5이 default dependency)
- respositories : gradle이 라이브러리를 다운 받는 원격저장소(default로 mavenCentral. 특정 URL을 넣을 수도 있다.)
프로젝트 실행은 java / hello / hellospring / HelloSpringApplication,java 를 실행하면 main()에서 SpringApplication.run()이 자기 자신(HelloSpringApplication)을 보여준다.
실행이 되면 localhost:8080에 접속할 수 있다.
아래의 사진과 같이 Whitelabel Error Page가 나오면 정상 작동한다.
IntelliJ IDEA에서 gradle을 통해 실행하면 느리게 실행될 때가 있다.
Setting -> gradle에서 Build and run, Run test using을 모두 IntelliJ IDEA로 바꿔주면된다.
2 ) 라이브러리 살펴보기
- Gradle는 의존관계가 있는 라이브러리를 함께 다운로드 한다.
" 스프링 부트 라이브러리 "
- 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
- spring-boot
" 테스트 라이브러리 "
- spring-boot-starter-test
- junit : 테스트 프레임워크
- mockito : 목 라이브러리
- assertj : 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
- spring-test : 스프링 통합 테스트 지원
External Libraries를 보면 수많은 라이브러리들이 dependencies 되어 있다.
Gradle은 사용할 dependencies를 관리해주기 때문에 필요한 라이브러리들이 있으면 모두 관리가 된다.
gradle를 클릭하면 관리되는 dependencies를 확인할 수 있다.
3 ) View 환경설정
Welcome View Page를 만들려면 resources / static 에 index.html를 만들어 주면 된다.
localhost:8080을 접속하면 스프링은 static 에 있는 index.html을 먼저 찾는다.
thymeleaf 템플릿엔진으로 만든 view page를 만들기 위해서는 Controller를 만들고 resources / templates 안에 Controller 메소드의 return명 + .html 이름으로 만들어주면 된다.
4 ) 빌드하고 실행하기
IntelliJ IDEA에서 실행한 것으로 실제 실행할 수 있는 파일을 만들어 본다.
콘솔로 이동
- ./gradlew build
- cd build / libs
- java - jar hello-spring-0.0.1-SNAPSHOT.jar
- 실행 확인한다.
윈도우 기준
- 콘솔로 이동하고 명령 프롬프트(cmd)로 이동한다.
- 명령 프롬프트(cmd)에서 gradlew.bat build를 입력한다.(안될 시 gradlew.bat clean 을 실행후 다시시작한다.)
- gradlew build 후 폴더 build / libs 에 jar파일이 생성되있는지 확인
- build / libs 이동 후, java -jar 파일명 입력한다.
출처 : 인프런 - 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 김영한
'SPRING > 스프링 입문 (김영한 강사님)' 카테고리의 다른 글
스프링 입문 정리 (6) - 스프링 DB 접근 기술 (0) | 2023.08.02 |
---|---|
스프링 입문 정리 (5) - 회원 관리 예제-웹 MVC 개발 (0) | 2023.07.14 |
스프링 입문 정리 (4) - 스프링 빈과 의존관계 (1) | 2023.07.10 |
스프링 입문 정리 (3) - 회원 관리 예제-백엔드 개발 (0) | 2023.07.10 |
스프링 입문 정리 (2) - 스프링 웹 개발 기초 (0) | 2023.06.05 |