본문 바로가기
728x90

BackEnd24

Spring - 오브젝트와 의존관계(스프링의 IoC와 DI) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로 rbsks.tistory.com 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) S.. 2023. 3. 21.
Spring - 오브젝트와 의존관계(상속을 통한 확장과 인터페이스의 도입) 2023.03.19 - [Spring] - Spring - 오브젝트와 의존관계(관심사의 분리) Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로 rbsks.tistory.com 이전 포스트에서 리팩토링 메소드 추출 기법을 사용하여 관심사를 분리해 변화에 좀 더 유연하게 대처할 수 있는 코드를 만들어 보았습니다. 이번 포스트에서는 변화를 반기는 DAO를 만들어 보겠습니다. 앞에서 만들었던 UserDao가 인기를 끌면서 N 사와 D 사에서 사용자 관리를 위해 UserDao를 구매하겠다는 주문이 들어왔다고 가정해 봅시다.. 2023. 3. 19.
Spring - 오브젝트와 의존관계(관심사의 분리) Spring 이란? 스프링은 자라를 기반으로 한 기술입니다. 스프링의 철학은 자바 엔터프라이즈 기술의 혼란 속에서 잃어버렸던 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로그래밍이 제공하는 폭넓은 혜택을 누릴 수 있도록 기본으로 돌아가자는 것입니다. 스프링이 가장 관심을 많이 두는 대상은 오브젝트입니다. 애플리케이션에서 오브젝트가 생성되고 다른 오브젝트와 관계를 맺고, 사용되고, 소멸하기까지의 전 과정을 자세히 살펴보아야 합니다. 결국 오브젝트에 대한 관심은 오브젝트의 기술적인 특징과 사용법을 넘어서 오브젝트의 설계로 발전하게 됩니다. 객체지향 설계의 기초와 원칙, 다양한 목적을 위해 재활용 가능한 설계 방법인 디자인 패턴 좀 더 깔끔한 구조가 되도록 지속적으로 개선해나가는 작업인 리팩.. 2023. 3. 19.
@ControllerAdvice와 @ExceptionHandler 이번 포스트에서는 @ExceptionHandler와 @ControllerAdvice에 대해서 알아보도록 하겠습니다. @ExceptionHandler Controller 내 메소드에 정의되어 해당 컨트롤러에서 발생하는 예외를 받아 처리합니다. package com.example.oauth.config.controller; import com.example.oauth.config.common.exception.GlobalErrorResult; import lombok.extern.slf4j.Slf4j; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.ExceptionHandler; imp.. 2023. 1. 8.
DispatcherServlet과 Spring MVC 아키텍처 이번 포스트에서는 DispatcherServlet과 Spring MVC 아키텍처에 대해서 알아보도록 하겠습니다. Spring MVC 스프링 웹 기술은 MVC 아키텍처를 근간으로 하고 있습니다. MVC는 프레젠테이션 계층의 구성요소를 M(정보를 담은 모델), V(화면 출력 로직을 담은 뷰), C(제어 로직을 담은 컨트롤러)로 분리하고 이 세가지 요소가 서로 협력해서 하나의 웹 요청을 처리하고 응답을 만들어내는 구조입니다. MVC 아키텍처는 보통 front controller 패턴과 함꼐 사용됩니다. front controller는 클라이언트가 보낸 요청을 가장 먼저 받아서 공통적인 작업을 수행한 후에 적절한 세부 컨트롤러로 작업을 위임해주고, 클라이언트에게 보낼 뷰를 선택해서 최종 결과를 생성하는 작업을 .. 2022. 12. 18.
빈 스코프 빈 스코프 란? 지금까지 스프링 빈이 스프링 컨테이너의 시작과 함께 생성되어 스프링 컨테이너가 종료될 때 까지 유지된다고 알고있었다. 이것은 스프링 빈이 기본적으로 싱글톤 스코프로 생성되기 때문이다. 스프링은 싱글톤 스코프 말고도 다양한 스코프를 지원한다. 빈 스코프 종류 싱글톤 : 기본 스코프, 스프링 컨테이너의 시작부터 종료까지 유지되는 가장 넓은 범위의 스코프 프로토타입 : 스프링 컨테이너 프로토타입 빈의 생성과 의존 관계 주입까지만 관여하고 더는 관리하지 않는 매우 짧은 범위의 스코프 웹 관련 스코프 request : 웹 요청이 들어오고 나갈때 까지 유지되는 스코프 session : 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프 application : 웹의 서블릿 컨텍스트와 같은 범위로 유.. 2022. 12. 18.
728x90