스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 수강 중
섹션 2. 프로젝트 환경설정
스프링과 스프링 부트의 차이
Spring: Java 기반 애플리케이션 개발을 지원하는 오픈소스 프레임워크
Spring Boot: 스프링 프레임워크를 보다 쉽게 사용할 수 있도록 만든 프레임워크
-개발자가 설정 파일을 작성할 필요 없이, 프로젝트의 설정과 라이브러리 의존성을 자동으로 처리해주는 기능을 제공
기반 프로젝트의 빌드 및 의존성 관리 도구
gradle: Groovy/Kotlin DSL 기반, 스크립트처럼 유연하고 빠름. 캐싱/병렬 처리 등 최신 빌드 기술을 활용
maven: 선언적 XML 기반, 규칙 중심, 일관된 표준 빌드. 구조는 안정적이지만 유연성은 낮음.
dependencies: 어떤 라이브러리를 쓸건지
template engines: 프로그램이 HTML 같은 템플릿 파일에 변수를 채워서 최종 출력물을 생성하도록 도와주는 도구(뒤에서 자세히 다룸)
view란 무엇인가?
사용자에게 보여지는 화면(출력 결과)을 담당하는 계층을 의미
즉, Controller가 처리한 데이터를 가지고 HTML, JSP, Thymeleaf, JSON 등의 형태로 렌더링하여 클라이언트에게 전달하는 역할



스프링이 model을 붙여준다. (key가 data고 값이 hello인 model)
컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버(viewResolver)가 화면을 찾아서 처리 스프링 부트 템플릿엔진 기본 viewName 매핑
resources:templates/ spring-boot-devtools +{ViewName}+ .html
C:\springstudy\hello-spring>gradlew
C:\springstudy\hello-spring>gradlew build
C:\springstudy\hello-spring>cd build
C:\springstudy\hello-spring\build>cd libs
C:\springstudy\hello-spring\build\libs>dir
C:\springstudy\hello-spring\build\libs>java -jar hello-spring-0.0.1-SNAPSHOT.jar