스프링 프레임워크- 스프링이란, 스프링의 특징, 스프링의 정의, POJO, 스프링 컨테이너란, 객체 등록 예시, 객체 조립 예시, 인터페이스 객체 등록 및 조립 예시

2019. 6. 25. 19:07Spring

----------------------------스프링 프레임워크-------------------------
        
spring framework
        - 경량(light-weight) 프레임워크다.
        - POJO(Plain Old Java Object)를 사용해서 엔터프라이즈
          애플리케이션을 개발할 수 있는 프레임워크다.
        - 애플리케이션네서 사용되는 객체를 생성 및 관리한다.
          (Bean Factory)


spring framework의 특징
        - 의존성 주입을 지원한다.
        - 관점지향 프로그래밍을 지원한다.
        - 단순한 데이터베이스 액세스 작업을 지원한다.
        - 선언적 트랜잭션처리를 지원한다.
        - spring mvc를 사용하면 model2 패턴의 웹 애플리케이션을 
          개발할 수 있다.
        - 다양한 외부 프레임워크와의 연동을 지원한다.
        - 테스트 코드의 구현 및 테스트 실행을 간단하게 구성할 수 있다.


spring framework를 한 단어로 정의한다면
        - 객체를 생성하는 공장
        - 객체를 조립하는 조립기계
        


POJO(Plain Old Java Object)
        - 단순하고 평범한 자바객체
        - 특별한 개발환경이나 특별한 실행환경을 필요로 하지 않는다.
        - 테스트 작업이 쉽다.
        - 재사용성이 높다.


Spring Container
        - 스프링 프레임워크의 핵심 구현체다.
        - 빈설정파일을 읽어서 객체를 생성하고, 고립하는 일을 담당한다.
        - 종류
                BeanFactory 인터페이스
                        - XmlBeanFactory
                ApplicationContext 인터페이스
                        - ClassXmlApplicationContext
                        - FileSystemXmlApplicationContext
                        - GenericXmlApplicationContext
                




예시) 객체를 컨테이너에 등록해서 사용하기
demo1

Sample1.java



Sample2.java



demo1.xml



demo1App.java



--------------------------------
실행결과






예시) 객체를 생성 후 조립해서 사용하기
demo2

GreetingService.java



KoreanGreeting.java



EnglishGreeting.java



demo2.xml



Demo2App.java



---------------------------------
실행결과






예시) 인터페이스(interface)객체를 만들고 상황에 맞게 조립하여 사용하기
demo4

Messenger.java



SmsMessenger.java



KatalkMessenger.java



EventNoticeService.java



OrderService.java



demo4.xml



Demo4App.java




------------------------
실행결과