Spring (3) 썸네일형 리스트형 [Spring] Spring Core(2): 의존성 주입(DI), 개념, 방법, 장단점, 생성자 주입을 사용하자 의존성 주입(DI)이란? 의존성 주입 = Dependency Injection = DI 먼저 '의존성' 이 무엇인지 부터 알아보자! 의존성 (Dependnecy) 기업에서 사용하는 애플리케이션은 하나의 객체로 이루어져 있지 않다. 완전 간단한 애플리케이션이더라도, 몇 개의 객체가 서로 협력하고 있다. 객체가 협력한다는 것은 객체 간의 의존성이 존재한다는 것이다. 의존성이란 파라미터나 리턴값 또는 지역 변수 등으로 다른 객체를 참조하는 것을 의미한다. 이렇게 한의 객체는 다른 객체의 부품이 된다. 이 글에서 말할 의존성 주입은 Spring의 의존성 주입이다. Spring에서 관리해주는 객체를 Spring Bean이라고 하는데, 주로 Controller, Service, Repository를 스프링 컨테이너.. [Spring] Spring Core(1): 스프링 빈(Spring Bean)의 개념, Component, Controller, Service, Repository의 역할 스프링 빈(Spring Bean)이란? Spring IoC 컨테이너가 관리하는 자바 객체 IoC(Inversion Of Control)이 뭘까? 제어의 역전이다. 우리가 사용하던 자바 프로그램에서는 프로그래머가 직접 객체를 생성하고, 원하는 클래스 내에서 다른 객체를 생성해 사용했다. 이 경우 프로그래머가 객체의 생명 주기를 관리하고 있다. 제어의 역전이 일어나면, 프로그래머가 아닌 다른 무언가가 관리를 위임하게 된다. 프로그래머의 제어 권한을 다른 주체에게 넘기는 것을 IoC(제어의 역전) 이라고 한다. Spring은 직접 자바 객체를 생성하고 관리하기 떄문에 이 관리 위임 주체는 Spring이 된다. Spring이 생성하고 관리하는 자바 객체를 Bean이라고 한다. Spring Framework에서는.. Spring Batch 원리와 철학 이해 1. 배치 프로그램이란 무엇인가? 2. 배치 사용 예 정산 시스템 데이터 마이그레이션 ( 기존 데이터를 특정 요구사항에 의해 다른 테이블, 다른 DB로 이동 ) 약관 변경 메일 통계 게임 랭킹 쇼핑몰 배송 요청 등등 3. 배치의 특징 자원을 효율적으로 사용 대량의 데이터를 실시간으로 매번 처리하는것은 값비싸고 크게 의미가 없는 행위 그래서 배치처리를 통해 한번만 처리하고 결과물을 캐시하여 사용자게에 제공할 수 있음. 사용자가 없는 다시 말해 자원이 많은 야간 시간대에 배치를 돌림으로써 풍족한 자원 활용할 수 있다. 대량의 데이터 처리 주로 정해진 시간에 반복적으로 자동 실행 ex) 정산시스템 일간,주간,월간 사용자와의 상호작용 없이도 동작 ex) 약간 변경 메일 전송 실시간성 결핍 잘못 동작하면 큰 문제.. 이전 1 다음