Spring 5

[스프링부트] 자동 구성 기반 애플리케이션

자동 구성 빈 등록 자동 구성 기반 애플리케이션 설정스프링부트의 자동구성은 애플리케이션의 환경 및 클래스패스에서 사용 가능한 라이브러리를 감지하고, 이에 따라 적절한 빈(Bean)을 자동으로 등록하여 애플리케이션이 정상적으로 작동하도록 하는 기능이다. 예를 들어, 데이터베이스 관련 라이브러리가 클래스패스에 존재하면, 데이터베이스 연결을 위한 빈을 자동으로 구성한다. 자동 구성 빈 등록이 어떻게 되는지 알아보도록 하겠다. 빈 오브젝트 역할빈 오브젝트는 크게 3가지로 구분할 수 있다.1. 애플리케이션 로직 빈애플리케이션 비즈니스 로직을 담고 있는 클래스로 만들어지는 빈이다. 빈은 주로 @Service, @Component, @Repository 등의 애노테이션으로 표시되며, Spring의 IoC(Invers..

Spring 2024.04.17

[스프링부트] Bean Container와 Proxy

프록시 패턴 프록시 패턴이 어떻게 사용되는지 알아보겠다. 아래는 전체 테스트 코드이다. public class ConfigurationTest { @Test void configuration() { Common common = new Common(); Assertions.assertThat(common).isSameAs(common); AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(); ac.register(MyConfig.class); ac.refresh(); Bean1 bean1 = ac.getBean(Bean1.class); Bean2 bean2 = ac.getBean(Bean2.class); Assert..

Spring 2024.04.16

[스프링부트] 빈 컨테이너 생성

Bean Container 생성 후 Bean을 등록하는 과정에 대해서 알아보자. Bean Contianer 이전에는 서블릿 컨테이너를 생성하고 서블릿을 등록하는 것까지 배웠다. 또 다른 컨테이너인 빈 컨테이너를 생성하고 등록하는 과정에 대해서 알아보겠다. DI 실습을 하기 앞서 http 요청을 처리할 클래스를 2개 생성할 것이다. 첫 번째 클래스는 HelloController이다. "/hello" url의 요청을 처리할 클래스이다. 코드는 다음과 같이 작성한다. public class HelloController { private final HelloService helloService = new HelloService(); public String hello(String name) { return h..

Spring 2024.04.08

[스프링부트] 서블릿 컨테이너 만들기

서블릿 컨테이너를 직접 생성해 보자. 스프링 구조 스프링은 위의 그림처럼 서블릿 컨테이너와 Bean 컨테이너 2가지 구조로 이루어져 있다. 오늘 실행할 실습은 서블릿 컨테이너를 직접 생성하고 등록하는 예제를 진행할 것이다. 스프링 부트 초기 설정 import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class HellobootApplication { public static void main(String[] args) { SpringApplication.run(HellobootApplicati..

Spring 2024.04.05

[스프링부트] 스프링부트 살펴보기

Spring Boot란 스프링 부트(Spring Boot)는 자바 언어로 개발된 오픈 소스 프레임워크인 스프링(Spring)의 일종이다. 스프링 부트는 스프링 프레임워크의 기능을 보다 쉽게 사용할 수 있도록 도와주는 도구이며, 애플리케이션의 개발과 배포를 단순화하는 데 중점을 두고 있다. 강의에서 강조한 부분은 스프링과 스프링 부트가 다르다는 점이다. 스프링 부트는 스프링의 사용 방법을 제안하는 것이고, 스프링 부트를 잘 알게된다는 것은 스프링을 잘 활용한다는 뜻과 같다. Spring Boot의 핵심 목표 초기 설정의 간소화 : 스프링 부트는 초기 설정을 최소화하여 개발자가 더 빠르게 애플리케이션을 구축할 수 있도록 한다. 기본 설정은 내장된 서버와 자동 구성 기능을 포함하여 개발자가 별도의 설정 없이도..

Spring 2024.04.04