국기훈련과정/Spring

1. 빈 관리 전략 1-1. XML 단독 사용 - 모든 빈을 명시적으로 XMl에 등록하는 방법. - 생성되는 모든 빈을 XMl에서 확인할 수 있다는 장점. - 빈의 개수가 많아지면 어ㅓ지러워짐. - 여러 개발자가 같은 설정파일을 공유해서 개발하다보면 설정을 동시에 수정하다가 충돌이 일어나기도 함. - DI에 필요한 적절한 setter 메서드 또는 constructor가 코드 내에 반드시 존재해야 함. - 개발 중에는 어노테이션 설정방법을 사용하는 것이 유리함. - 운영 중에는 관리의 편의성을 위해 XML설정으로 변경하는 전략을 취할 수도 있음. 1-2. XML과 Bean Scanning의 혼용 - Bean으로 사용될 클래스에 어노테이션을 부여해주면 자동으로 그런 클래스를 찾아서 Bean으로 등록해줌.(빈..
1. Bean 의존관계 설정 방법 1)Setter Injection : 태그 - ref 속성은 Bean 이름을 이용해 주입할 Bean을 찾는다. - value 속성은 단순 값 또는 Bean이 아닌 객체를 주입할 떄 사용. 2) Constructor Injection: 태그 - 생성자의 파라미터를 이용하기 때문에 한번에 여러 객체를 주입할 수 있음. 2. Collection 타입의 값 주입 1) List와 Set 타입 : 와 태그 이용 / Set일 경우 대신 이용 2) Map 타입: 과 태그 이용 3. Property 파일을 이용한 설정 방법 - 환경에 따라 자주 변경되는 내용의 분리 - 변경되는 이유와 시점이 다르다면 분리하는 것이 객체지향 설계의 기본 원칙이므로 - 환경에 따라 자주 변경될 수 있는 내..
1. jUnit의 특징 - 단정(assert) 메서드로 테스트 케이스의 수행 결과를 판별. - jUnit4부터는 간단하게 테스트를 진행할 수 있도록 어노테이션을 제공한다. @Test, @Before @After - 각 @Test 메서드가 호출될 때마다 새로운 인스턴스를 생성하여 독립적인 테스트가 이루어지도록 한다. 1-2. jUnit 라이브러리 설치 - pom.xml에 추가해준다. (spring mvc project 템플릿엔 기본 포함되어 있음.) 2. jUnit의 어노테이션 1) @Test - 테스트를 수행하는 메소드에 지정. - 각각의 테스트가 서로 영향을 주지 않고 독립적으로 실행됨을 원칙으로 함. -> 각각의 @Test마다 객체를 생성함 2) @Ignore - 이것이 선언된 메서드느 테스트를 실행..
1. POJO 클래스 작성 Hello.java package myspring.di.xml; public class Hello { String name; Printer printer; public Hello() {} public void setName(String name) { this.name = name; } public void setPrinter(Printer printer) { this.printer = printer; } public String sayHello() { return "Hello " + name; } public void print() { this.printer.print(sayHello()); } } Printer.java 인터페이스 package myspring.di.xml; ..
1. IoC (Inversion of Control) - 제어권의 역전. - 객체의 생성, 생명주기의 관리까지 모든 객체에 대한 제어권이 바뀌었다는 것을 뜻함. - 개발자가 아닌 컨테이너가 관리해줌. 1-1 IoC 컨테이너 - 객체의 생성을 책임지고, 의존성을 관리함. - POJO의 생성, 초기화, 서비스, 소멸에 대한 권한을 가짐. - 개발자들이 직접 POJO를 생성할 수 있지만 컨테이너에게 맡김. 1-2 IoC 의 분류 DL보다는 DI를 선호함. DL - 의존성 검색 - 저장소에 저장되어 있는 Bean에 접근하기 위해 컨테이너가 제공하는 API를 이용하여 Bean을 검색. - DL을 사용하면 컨테이너 종속성이 증가함. ==> DI를 주로 사용하게 되는 이유 DI - 의존성 주입 - 각 클래스 간의 의..
1. STS 설치 - 이클립스 EE를 쓰는 것보다 나은 편의기능을 제공해줌. 2. Maven과 Library 관리 - 편리한 Dependent Library 관리 - 여러 프로젝트에서 프로젝트 정보나 jar파일들을 공유하기 쉬움 - 모든 프로젝트의 빌드 프로세스를 일관되게 가져갈 수 있음 - Pom.xml 파일의 Dependency 태그를 통해 라이브러리를 관리. (POM = Project Object Model) - spring-jdbc 모듈과 spring-web 모듈을 추가해 주어야 한다.
1. Spring Framework란? - JAVA 엔터프라이즈 개발을 편하게 해주는 옾느소스 경량급 애플리케이션 프레임워크이다. - 엔터프라이즈 개발 용이 => 개발자가 복잡하고 실수하기 쉬운 Low level(보안, 인증, Tx 처리 등)에 신경쓰지 않으면서 비지니스 로직 개발에 전념할 수 있도록 해줌. 1-1. Spring Framework 전략 1) Portable Service Abstraction (서비스 추상화) 트랙잭션 추상화, OXM(Object XML Mapping) 추상화, 데이터 액세스의 Exception 변환기능 등 기술적인 복잡함은 추상화를 통해 Low level의 기술 구현 부분과 기술을 사용하는 인터페이스로 분리함. 2) 객체지향과 DI(Dependency Injection)..
1. root-context.xml 에 DB연동과 관련된 설정을 추가해 준다. c3p0 커넥션풀 설정, Mybatis 연동을 위한 SqlSessionFactoryBean객체와 SqlSessionTemplate을 추가해 준다. 2. MyBatis 설정을 위한 mapper xml 파일을 추가한다. mapperLocations의 value에 작성한 대로 경로에 맞춰 .xml 파일을 생성한다. mapper의 namespace는 interface로 설정을 해준다.
Purewater
'국기훈련과정/Spring' 카테고리의 글 목록