- 강의 소개
- 프로젝트 생성
- 라이브러리 살펴보기
- View 환경설정
b251cdd258178ef0dac9da7b41e18e30d7ec155f
<스프링 입문 강의 - 1강 강의 소개>
* 스프링 학습을 포기하는 이유
- 스프링이 너무 거대하고 이론적인 학습 부분부터 학습하여 포기한다
* 스프링을 왜 공부해야하는가
- 실무에서 동작하는 웹 어플리케이션 개발
* 스프링을 공부하는 방법
- 직접 코딩하면서 배우기
* 학습 내용
- 스프링 프로젝트 생성
- 스프링 부트로 웹 서버 실행
- 회원 도메인 개발
- 웹 MVC 개발
- DB 연동 : JDBC, JPA, 스프링 데이터 JPA
- 테스트 케이스 작성
* 사용 기술
- Spring boot
- Gradle
- Tymeleaf
- JPA
- Hibernate
- Tomcat
<스프링 입문 강의 - 2강 프로젝트 생성>
* 설치
- JAVA 11 설치
- IDE IntelliJ 설치
* spring boot 프로젝트 생성
- start.spring.io : spring boot 기반으로 spring 프로젝트를 만들어주는 사이트
- Project(Maven/Gradle) : 필요한 라이브러리를 가져오고 빌드하는 라이프사이클을 관리해주는 툴
- Language(Java/Kotlin/Groovy)
- Spring Boot 버전 : SNAPSHOT은 만들고 있는 버전, M1은 정식 release되지 않은 버전
- Project Metadata : Group은 기업명, Artifact는 결과물 이름
- Dependencies : Spring Web는 웹 프로젝트, Thymeleaf는 html을 만들어주는 템플릿 엔진
* spring boot 프로젝트 import
- start.spring.io에서 설정한 프로젝트 다운로드
- IntelliJ에서 import (build.gradle 선택)
* 프로젝트 구성
- src/main : 개발에 사용되는 리소스
- src/test : 테스트에 사용되는 코드(테스트 디렉토리를 따로 둘만큼 테스트가 중요하다)
- src/main/java : java 파일
- src/main/resource : xml, 설정파일(properties), html 등 java를 제외한 리소스 파일
- build.gradle : plugins는 버전/언어 등 설정, dependencies는 라이브러리, repositories는 라이브러리를 받는 소스
- gitignore : git에 올라가야하는 내용과 올라가면 안되는 내용을 구분해줌
* IntelliJ setting
- (windows) settings(ctrl+alt+s) > Appearance&Behavior > Build, Execution, Deployment > Gradle에서 Gradle(default)를 IntelliJ IDEA로 변경
- 이를 설정시 Gradle을 거치지 않고 실행하여 더 빠르다고 함
<스프링 입문 강의 - 3강 라이브러리 살펴보기>
* build.gradle 살펴보기
- 추가한 라이브러리 : thymeleaf, web, 그리고 자동으로 추가된 test
- 그러나 web이 필요로하는(의존하는) 라이브러리들(tomcat, mvc 등)을 자동으로 모두 가져옴
* IntelliJ Gradle 탭 살펴보기
- Dependencies > compileClasspath에서 의존 확인 가능
* tomcat library
- 요즘은 서버를 따로 설치하지 않음
- 서버가 내장(embedded)되어 실행시 알아서 서버로서 실행
* logging
- spring boot starter에서 의존
- slf4j는 인터페이스
- logback을 많이 사용
* test
- junit library가 핵심
- mockito
- assertj
<스프링 입문 강의 - 4강 View 환경설정>
* wellcome page
- 처음 서버에 접속했을 때 보여주는 페이지
- /src/main/resource/statric/index.html 추가
* spring boot 기능 찾기
- spring boot는 기능이 방대하여 필요한 기능을 찾는 것이 중요
- spring.io > projects > spring boot > learn
- Reference Doc.에서 검색
* 템플릿 엔진
- 예시로 작성한 index.html은 정적 컨텐츠
- 템플릿 엔진은 동적 컨텐츠로 바꿀 수 있도록 해주는 기능
'프레임워크 > Spring' 카테고리의 다른 글
[인프런][스프링 입문] 9~12 강 (0) | 2022.02.07 |
---|---|
[인프런][스프링 입문] 5~8 강 (0) | 2022.02.06 |
[Spring] 문서의 요소 콘텐츠에서 부적합한 XML 문자 (0) | 2022.01.28 |
[Spring] 예외 처리시 Throws vs try-cat-finally (0) | 2022.01.18 |
[Spring] CrudRepository에서 update (0) | 2022.01.16 |