* 이 글은 인프런 김영한 강사님의 스프링 입문 강의를 듣고 작성했습니다. *
1) 프로젝트 환경 설정
다음과 같은 순서로 간단한 웹 앱을 만들면서
스프링 기본 원리에 대해서 배우는 강의다.
Maven, Gradle은 라이브러리를 가져오고 이 라이브러리들의 라이프 사이클을 관리해주는 툴이다.
과거에는 Maven을 많이 썼지만, 요즘엔 Gradle을 많이 쓰는 추세다.
SNAPSHOT은 아직 만들고 있는 버전이고, M으로 시작되는 버전은 정식으로 릴리즈 된 버전은 아닌 것이다.
Group에는 보통 회사명이 들어가게 만든다. Artifact는 빌드 됐을 때 나오는 이름을 설정하는 것.
참고로, 현업에서는 system.out.println을 사용해서 로그를 찍지 않는다.
따로 로그를 찍어야 전체적인 로그 관리도 되고, 필요할 때 모아볼 수 있기 때문이라고 한다.
여기서 slf4j는 인터페이스에 해당, 요즘에는 logback을 많이 사용한다고 한다.
스프링 부트 주요 라이브러리
- 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-starter-test
-> junit : 테스트 프레임워크
-> mockito : mock 라이브러리
-> assertj : 테스트 코드를 좀 더 편하게 작성하게 도와주는 라이브러리
-> spring-test : 스프링 통합 테스트 지원
2) 웹 개발 기초
웹 개발은 다음과 같이 3가지 방식으로 이루어진다.
- 정적 컨텐츠 : 파일을 그대로 웹 브라우저에 내려줘서 띄움
- MVC와 템플릿 엔진 : jsp, php 등의 템플릿 엔진을 활용해서 동적 컨텐츠로 변환해서, Model / View / Controller 방식으로 서버에서 띄움
- API : 안드로이드, 아이폰 클라이언트와 개발을 할 때, 서버가 JSON 포맷으로 데이터를 내려주는 방식
강의 들으면서 이어서 적을 예정!
'SpringBoot' 카테고리의 다른 글
Spring JPA 엔티티 설계 시 주의점 (0) | 2022.07.13 |
---|---|
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 (2) (0) | 2022.06.10 |
Swagger를 이용한 Springboot Restful API 문서 자동화 하기 (1) | 2022.04.21 |
[오류] Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. (0) | 2022.03.30 |
댓글