올해의 Spring3.0 개발의 첫 주자는 Arjen Poutsma이다. Arjen은 SWS(SpringWebService)의 리드를 맡고 있고, 스프링의 웹 부분에도 많은 기여를 한 개발자이다.

OXM모듈 추가

R-511에서 Arjen은 스프링의 OXM이라는 새로운 서브모듈을 추가했다. OXM은 Object/XML Mapping의 약자로 원래 SWS에 있던 기능이다. 자바 오브젝트와 XML의 매핑을 지원하는 프레임워크나 라이브러리는 다양하다. OXM의 목적은 그 다양한 Object/XML간의 변환(XML마샬링, XML직렬화라고도 한다)에 대한 추상레이어를 도입해주는 것이다. 스프링의 PSA(Portable Service Abstraction)의 전형적인 케이스라고 볼 수 있다.

현재 OXM이 지원하는 매핑 구현은 JAXB, Castor, XMLBeans, JiBX, XStream이다. 다양한 옵션과 장단점을 가진 이런 구현을 다음의 간단한 스프링이 제공하는 추상 인터페이스로 사용하는 것을 가능하게 해준다.

public interface Marshaller {

    /**
     * Marshals the object graph with the given root into 
     * the provided Result.
     */
    void marshal(Object graph, Result result)
        throws XmlMappingException, IOException;
}

public interface Unmarshaller {

    /**
     * Unmarshals the given provided Source into an object graph.
     */
    Object unmarshal(Source source)
        throws XmlMappingException, IOException;
}

스프링의 DI 개념대로 각각의 실제 구현기술은 설정에서 간단히 교환해서 사용할 수 있다.

 

이런 OXM기능이 Spring에 모듈로 추가된 것은 흥미로운 일이다. 그만큼 OXM의 활용이 보편화되어있다는 증거일 수도 있고, 스프링의 다른 모듈들에서 이 OXM을 활용할 필요가 많이 있다는 증거일 수도 있다.

Core XML Util

OXM모듈 외에 추가된 것은 core모듈의 util항목에 여러가지 XMLReader가 추가된 것이다. StAX 방식의 XMLReader들과 SimpleNamespaceContext개념이 추가되었다.

 

스프링은 그동안 서브프로젝트(또는 포트폴리오 프로젝트)의 기능중 일부를 계속 코어 프레임워크에 추가해왔다. 코어 프레임워크가 비대해지지 않아야 한다는 기본 전제를 가지고 있고, 특별한 도메인이나 상황에서만 적용 가능한 부분은 최대한 별도 프로젝트로 분리해 내는 것이 스프링 개발팀의 정책이다. 그럼에도 코어 프레임워크에 통합되거나 추가되어지는 부분이 있다는 것은 그만큼 보편적으로 많이 사용되어지는 것이라는 뜻이다. 물론 스프링 자체도 옵셔널 모듈을 선택해서 사용할 수 있다는 면에서 그만큼 통합에 대한 부담도 적어진 것일 수도 있다.

예고된 대로 JavaConfig과 SWF의 일부기능도 3.0에 통합될 예정이다.

Related posts:

  1. Spring 3.0 (42) Spring Dependency Matrix 업데이트
  2. Spring 3.0.2 모듈/라이브러리 의존관계
  3. Spring 3.0 (1) 프로젝트 구조와 빌드 시스템의 변화
  4. Spring 3.0 (4) – Maven에서 Spring 3.0 최신버전 사용하기
  5. Spring 3.0 (18) Oxm 모듈의 선택 라이브러리 분석
  6. 미리 보는 Spring 3.0.1의 변경사항
  7. Spring Expressions(SpEL)를 이용한 Mockito Argument Matcher 만들기
  8. Spring 3.0 (8) Core 모듈의 선택 라이브러리 분석
  9. Spring 3.0 (40) Spring ASM 모듈의 소스는 어디에?
  10. Spring 3.0 (16) Jms 모듈의 선택 라이브러리 분석
  11. Spring 3.0 (7) Spring 3.0 Dependency Matrix
  12. Spring 3.0 (26) Spring Expression Language와 @Value
  13. Spring 3.0 (53) Spring Dependency Matrix 업데이트
  14. Spring 3.0 (35) Spring 3.0 Reference Document 공개
  15. 유쾌한 이슈처리 재촉 메일

Facebook comments:

to “Spring 3.0 (2) R-518 스프링의 새 모듈 OXM(Object/XML Mapping)”

  1. Hop Over To THESE Guys
    [url=http://bootssaleukonline.com]ugg sale uk[/url]
    ugg sale uk

  2. You Can Look HERE
    [url=http://outlettonlineshop.com]ugg store[/url]
    ugg store

  3. mbt exercise shoes Spring 3.0 (2) R-518 스프링의 새 모듈 OXM(Object/XML Mapping) » Toby’s Epril

Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

© 2017 Toby's Epril Suffusion theme by Sayontan Sinha