반응형

토비 스프링 7장 2

[토비의 스프링 3.1 Vol 1] 7장. 스프링 핵심 기술의 응용 (~7.7)

7.6 스프링 3.1의 DI 자바 언어의 변화와 스프링 (1) 애노테이션의 메타정보 활용 자바는 소스코드가 컴파일된 후 클래스 파일에 저장됐다가, JVM에 의해 메모리로 로딩되어 실행된다. 그런데 자바 코드 일부를 리플렉션 API 이용해 어떻게 만들었는지 살펴보고 동작하는 기능이 많아진다.특히 자바5에서 등장한 애노테이션 이후로 급격히 확산되기 시작했다. 자바 클래스나 인터페이스, 필드, 메소드 등은 그 자체로 실행 가능하고 상속하거나 참조하거나 호출하는 방식 등으로 직접 이용할 수 있다. 반면 애노테이션은 기존 자바 프로그래밍 방식으로 활용할 수 없고 옵션에 따라 컴파일된 클래스에 존재하거나 애플리케이션이 동작할 때 메모리에 로딩되기도 하지만 자바 코드가 실행되는 데 직접 참여하지 못한다. 복잡한 리..

[토비의 스프링 3.1 Vol 1] 7장. 스프링 핵심 기술의 응용 (~7.5 DI를 이용해 다양한 구현 방법 적용하기)

7.3 서비스 추상화 적용 자바에는 JAXB 외에도 다양한 XML과 자바오브젝트를 매핑하는 기술이 있다. 해당 기술에 대해서도 손쉽게 변경이 가능해야 한다. XML파일을 다양한 소스에서 가져오게 만들어야 한다. 임의의 클래스패스나 파일 시스템 상의 절대위치 또는 http 프로토콜 통해 원격에서 가져오도록 확장해야 한다. 7.3.1 OXM 서비스 추상화XML과 자바오브젝트를 매핑해서 상호 변환해주는 기술을 OXM Object-XML Mapping 이라고 한다. 스프링이 제공하는 OXM 추상화 서비스 인터페이스에는 자바 오브젝트를 XML로 변환하는 Marshaller와 반대로 XML을 자바오브젝트로 변환하는 Unmarshaller가 있다. OXM 기술에 따라 Unmarshaller 인터페이스 구현한 다섯 ..

반응형