Spring 3

[Spring] 주요 어노테이션 기능 정리

@Configuration설정 클래스를 정의할 때 사용Bean을 등록하고 구성할 클래스에 사용 @BeanSpring 컨테이너에 Bean을 등록개발자가 직접 관리해야 하는 객체를 Spring 컨테이너에 등록할 때 사용 @Autowired의존성 주입(DI)을 처리필요한 Bean을 자동으로 주입 @ComponentScan특정 패키지를 스캔하여 @Component, @Service, @Repository, @Controller가 붙은 클래스를 Bean으로 등록설정 클래스에서 컴포넌트를 스캔하도록 설정 @FilterComponentScan 시 특정 클래스를 포함하거나 제외원하는 대상을 스캔하거나 제외할 때 사용 @ComponentSpring Bean으로 등록Spring에서 관리해야 할 일반적인 객체에 사용 @Co..

Spring 2025.01.16

[Spring] 스프링 웹 개발 기초(정적 컨텐츠, MVC와 템플릿 엔진, API)

웹 브라우저에서 받은 요청을 스프링에서 처리할 때,1. 정적 컨텐츠로 반환2. MVC와 템플릿 엔진을 이용하여 반환3. API를 이용하여 반환하는 방법이 있다.   정적 컨텐츠정적 컨텐츠란 서버에서 별도의 처리 없이 있는 그대로 클라이언트(브라우저)로 전달되는 파일들이다. 폴더 구조를 보면 resources 폴더 아래 static 폴더가 있다.여기에 html 파일을 넣어두기만 하면 http://localhost:8080/hello-static.html라고 쳤을 때 해당 파일이 보인다.  Spring에서는 웹 브라우저에서 요청이 왔을 때 우선 컨트롤러에서 찾아보고, 없으면static 폴더에 있는 컨텐츠를 보여주는 것이다.          MVC와 템플릿 엔진MVC구조란 Model, View, Control..

Spring 2024.12.24

[Spring] 프로젝트 시작하기 (IntelliJ)

인텔리제이 환경에서 스프링 부트 프로그램을 개발하려면 어떻게 해야할까?  우선 스프링 부트 스타터 사이트로 이동해서 스프링 프로젝트를 생성한다.https://start.spring.io    들어가면 이런 화면이 뜰 텐데 여기서 Project Metadata를 알맞게 설정하고 GENERATE 버튼을 누르면 된다.  요즘은 Maven 보다는 Gradle을 주로 쓴다고 한다.버전에서 SNAPSHOT은 아직 만들고 있는 버전이기 때문에 그렇지 않은 버전 중 가장 높은 버전을 선택하였다.Dependencies에는 일단 Spring Web, Thymeleaf으로 하였다.Spring Web - 웹 애플리케이션 개발을 지원, RESTful 웹 서비스와 MVC(Model-View-Controller) 아키텍처를 구축하..

Spring 2024.12.22