목록IFSS (36)
Gentle Breeze
* Circular dependencies Constructor Injection 사용 시 Beans 간 서로 참조하여 순환 참조 관계가 만들어지지 않도록 주의하여야 함 * 사람이 읽을 수 있는 문자열(String) 표현처럼 property 나 생성자의 인자를 명시 * depends-on 객체의 생성 순서를 정의, 반드시 depends-on 에 선언된 객체가 호출 된 객체보다 먼저 생성되어 있어야 함 * singleton Pattern 특정 Bean을 getBean을 통해 여러번 호출해도 Bean 객체는 처음 하나만 생성됨 * default-lazt-init ="true" 모든 Bean들이 전부 Lazy Loading 으로 동작함 * singleton vs prototype - singleton : 여러..
* Spring IoC Container는 두가지 유형의 Container 제공 - BeanFactory (부모) - Lazy Loading : Lookup 시점이 아닌 실제 메소드가 호출되는 시점(사용되는 시점)에 객체를 생성 - ApplicationContext (자식) - Free Loading : 객체를 미리 생성해서 pool에 저장해 둔 다음 Loading (속도가 빠름) - BeanFactory를 상속받아 구현되어 있으므로 BeanFactory의 모든 기능을 제공하며 추가적으로 더 많은 기능을 제공한다. * Bean - Spring IoC Container에 의해 관리되는 객체 - loading 된 xml 파일을 통해 생성됨 - id, class 등의 메타데이터 속성을 통해 xml 파일에 기술..
* User.java package com.sds.emp.sample; public class User { private String userid; public String getUserid() { return userid; } public void setUserid(String userid) { System.out.println("setUserid called..." + userid); this.userid = userid; } } =========================================================================================== * input.html id =============================================..
* IoC (Inversion of Control) : 제어의 역행 (= Dependency Inversion / Hollywood Principle) - 객체가 생성될 때 필요로 하는 다른 객체들을 Container가 생성하여 주소값을 제공해 줌 * IoC와 Dependency Injection 간의 관계 - Dependency Injection 은 Spring 에서만 지원 - 생성자 주입 방식은 거의 사용되지 않음 * Dependency Lookup 과 Dependency Injection 의 차이점 - Dependency Lookup : Bean을 개발자가 직접 Lookup 하여 사용하는 것 - Dependency Injection : 각 계층 사이, 각 클래스 사이에 필요로 하는 의존관계가 있다면..
* Core Framework - Spring Framework 기반 (다른 Framework 와의 연동이 쉬움) * Container Model - Container : 어떤 객체의 Life Cycle을 관리해 주는 것 - POJO (Plain Old Java Object) - 아무런 규칙이 없는 JAVA Class - Spring Container - 경량의 Container - POJO Class를 관리 * AOP (Aspect Oriented Programming) - 관점 지향 프로그래밍 (eg : 예외처리, 로깅) 종단관점의 class들을 두고 횡단관점의 중복되는 code를 별도의 class로 뽑아낸 후 적절히 Mixing