springContainer9 섹션 4-10 [독립 실행형 스프링 애플리케이션] Bean 생명주기 메소드 Bean생명주기 메소드지금까지 우리는 비즈니스를 처리하기 위해 HelloController, HelloService를 Bean으로 등록하고 관리하였습니다 그러나 이외 추가적으로 오브젝트를 새로 생성하는 게 두가지 정도가 있습니다. TomcatServletWebServerFactory, DispatcherServlet 입니다. Standart Alone애플리케이션을 만들기 위해서 보이지 않는곳에서 일을 해주는 오브젝트를 만들어야 해서 직접 코드로 생성을 했는데 이러한 오브젝트들도 Spring Bean으로 등록하여 관리될 수 있도록 코드를 수정하려고 합니다. TobyspringbootApplication.classpackage com.tobyspring.tobyspringboot; import or.. 2024. 6. 1. 섹션 4-8 [독립 실행형 스프링 애플리케이션] 자바코드 구성 정보 사용 자바 코드 구성 정보 사용Spring Container가 사용하는 구성정보를 우리가 만든 코드를 어떻게 오브젝트로 만들어서 Container내에 컴포넌트를 등록해 두고 Spring Container안에 들어있는 우리가 Bean이라고 불리는 오브젝트가 또 다른 오브젝트를 사용한다면 즉 이제 의존하고 있다면 이 관계를 어떻게 맺어줄 것인가 어느 시점에 그 오브젝트를 주입해 줄 것인가 이런 정보들을 Spring Container에다가 구성 정보로 제공을 해줘야합니다. 이러한 구성정보를 제공하는 방법이 여러가지가 있을 수 있지만 예전에는 외부 설정파일을 이용했었지만 요즘은 좀더 쉽고 간결한 여러가지 방법들이 나와있습니다. 그 중 독특한 방법은 Factory Method를 이용하는겁니다. Factory Meth.. 2024. 6. 1. 섹션 4-7 [독립 실행형 스프링 애플리케이션] 스프링 컨테이너로 통합 스프링 컨테이너로 통합지금까지 만든 코드는 SpringContainer를 생성하고 Bean을 등록해서 초기화하는 작업을 해주는 SpringContainer작업 파트와 SpringContiner를 활용하면서 SubletContainer를 코드에서 생성하고 FrontController역할을 하는 DispatcherSublet을 등록하는 SubletContainer초기화 코드로 구분되어 질 수 있습니다.이제는 이러한 작업을 하나로 통합하는 과정을 통해 SubletContainer를 만들고 Sublet을 초기화하는등의 작업을 SpringContiner가 초기화 되는 과정중에 일어나도록 코드를 수정해보도록 하겠습니다. /* Spring Container 구현, DispatcherServlet을 사용하기 .. 2024. 6. 1. 섹션 4-6 [독립 실행형 스프링 애플리케이션] 애노테이션 매핑 정보 사용 애노테이션 매핑 정보 사용기존 코드HelloController.classpackage com.tobyspring.tobyspringboot;import java.util.Objects;public class HelloController { private final HelloService helloService; public HelloController(HelloService helloService) { this.helloService = helloService; } public String hello(String name) { return helloService.sayHello(Objects.requireNonNull(name)); }} 애노테이션 매핑 정보 사용 코드package com.tobysp.. 2024. 6. 1. 섹션 4-5 [독립 실행형 스프링 애플리케이션] DispatcherServlet으로 전환 DispatcherServlet로 전환기존 코드TobyspringbootApplication.classpackage com.tobyspring.tobyspringboot; import java.io.IOException; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.boot.autoconfigure.SpringB.. 2024. 6. 1. 섹션 4-4 [독립 실행형 스프링 애플리케이션] 의존 오브젝트 DI 적용 의존 오브젝트 DI 적용현재까지 구성한 코드는 HelloController가 SimpleHelloService라는 클래스의 오브젝트를 직접 생성해서 사용하는 방식이였는데 직접 생성해서 사용하는 방식이 아닌 Sprinb Bean으로 등록하고 Spring Container가 Assembler로서 Dependency Injection 즉 SimpleHelloService bean오브젝트를 HelloController가 사용할 수 있도록 주입해주도록 구현해보겠습니다. 기존 코드HelloController.classpackage com.tobyspring.tobyspringboot; import java.util.Objects; public class HelloController { pu.. 2024. 6. 1. 이전 1 2 다음