[Spring MVC] Bean Validation(검증)
·
Back-end/Spring
Bean Validation 사용 전Item (사용 전)@Datapublic class Item { private Long id; private String itemName; private Integer price; private Integer quantity; public Item() { } public Item(String itemName, Integer price, Integer quantity) { this.itemName = itemName; this.price = price; this.quantity = quantity; }} 만약 위와 같은 Item 객체가 있을 때 클라이언트에서 새로운 Item을 등록하면서가..
[Spring] 빈 생명주기 콜백
·
Back-end/Spring
만약 데이터베이스나, 네트워크 소켓처럼 애플리케이션 시작 시점에 연결을 해두고,애플레케이션 종료 시점에 연결을 모두 종료해야 하는 작업을 해야한다면객체의 초기화와 종료 작업이 필요합니다.  스프링 빈은 간단하게 보면 "객체 생성 → 의존성 주입" 과 같은 라이프사이클을 가집니다. 이때 스프링 빈은 객체 생성, 의존관계 주입이 다 끝난 후에야 필요한 데이터를 사용할 수 있게됩니다.따라서 초기화 작업은 의존관계 주입이 끝난 다음에 호출해야 합니다.개발자 입장에서 의존관계 주입이 끝난 시점을 어떻게 알 수 있을까요? 스프링에는 의존관계 주입이 완료되면 스프링 빈에게 콜백 메소드를 통해서 초기화 시점을 알려줍니다. 또한 스프링 컨테이너가 종료되기 직전에 소멸 콜백을 줍니다. 이러한 콜백들을 통해 안전하게 종료 ..
[Spring] 싱글톤 컨테이너&싱글톤 패턴
·
Back-end/Spring
싱글톤 패턴싱글톤 컨테이너를 살펴보기 전에 싱글톤 패턴에 대해 알아보도록 하겠습니다.싱글톤 패턴이란 클래스의 인스턴스가 딱 1개만 생성되는 것을 보장하는 디자인 패턴 입니다. singletonService (싱글톤 패턴을 사용한 클래스)package hello.core.singleton;public class SingletonService { //1. static 영역에 객체 하나 생성. private static final SingletonService instance = new SingletonService(); //2. 접근제한자를 public으로 하여 객체 인스턴스가 필요하면 조회가능하도록 한다. public static SingletonService getInstance()..