달력

4

« 2024/4 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

*** Juergen Hoeller가 Spring Framework Team Blog에 올린 글을 번역한 것입니다.

Spring 3.0 milestone을 사용이 가능함을 발표할 수 있어 기쁩니다(내려받는 page).

이번 release에는 다음과 같은 다양한 개선 사항과 신기능이 들어있습니다.

API를 Java 5 형태에 맞도록 수정: 일관되게 generic collection과 map을 썼고, 일관되게 generic을 적용한 FactoryBean을 썼으며, Spring AOP API에서는 bridge method을 일관되게 결정하도록 했습니다. Generic을 적용한 ApplicationListener들은 자동으로 정해진 type에 해당하는 event만 받습니다. TransactionCallback와 HibernateCallbackcallback 따위의 모든 Callback interface는 이제 generic을 적용한 결과값을 돌려주도록 선언했습니다. 전반적으로, Spring core codebase는 이제 산뜻하게 정리되어 Java 5에 잘 들어맞습니다.

동시성 지원 확대: 그동안 우리는 Spring의 TaskExecutor를 Java 5의 java.util.concurrent 기능과 밀접하게 통합시켜 왔습니다. 이제 ExecutorService adapter, ThreadFactory 통합 등과 아울러 Callable과 Future를 최우선적으로 지원합니다. 이들은 그간 최대한 JSR-236(Java EE 6용 Concurrency Utility)과 발맞추어 왔습니다. 더불어, @Async annotation(이나 EJB 3.1의 @Asynchronous annotation)을 써서 비동기적으로 method를 호출할 수 있습니다. 그리고 Spring 3.0 M3에는 scheduling을 편하게 설정할 수 있는, cron 형태의 timer 지원을 포함하는, scheduling namespace를 추가할 예정입니다.

OXM을 core에 포함: 객체(Object)/XML mapping module을 Spring Web Service project에서 Spring core project로 옮겼습니다. OXM을 Java 5에 걸맞게 수정해 왔으며, JAXB2, JiBX, Castor, XMLBeans, XStream을 쓰는 marshalling 및 unmarshalling을 지원합니다. 또한 Spring JMS(MarshallingMessageConverter)와 Spring MVC(MarshallingView)용 OXM 지원 기능도 있습니다.

RestTemplate: 새로운 client측 REST 지원 기능이 생겼습니다. 바로 오랫동안 기다려온, Spring solution으로부터 기대할 수 있는 유연하고 확장성이 풍부한 HTTP 처리 하부 구조를 지닌 RestTemplate입니다. 또한 Spring MVC에서의 REST 지원과 관련하여 몇몇 개선이 이루어졌습니다. Arjen이 올릴 최신 REST 지원 기능에 대한 blog post를 기대하세요!

Portlet 2.0 상의 MVC: 이제 Spring Portlet MVC는 Portlet 2.0 API(JSR-286)을 기반으로 합니다. (Portlet 2.0에서 정의하는) action 이름, window 상태, resource id, event 이름의 특성을 지원하는 기능을 포함한 Portlet MVC Handler method용 @ActionMapping, @RenderMapping, @ResourceMapping and @EventMapping annotations를 제공합니다.

신속한 JPA 2.0 지원: 마지막으로, 우리는 곧 나올 JPA 2.0 preview를 지원하는 JPA provider와 아울러 JPA 2.0 명세도 능동적으로 쫒아가고 있습니다. Spring 3.0 M2는 이미, Spring이 관장하는 transaction 하에서의 query timeout 및 Spring이 관리하는 EntityManager proxy에서의 QueryBuilder 접근 따위 같이, JPA 2.0 API를 지원합니다. JPA 2.0이 안정화되는대로 이 기능을 Spring 3.0 RC1에서 매듭짓겠습니다.

지금이야말로 Spring 3.0을 일찍 시도해 보기 좋은 때입니다! 여러분께서 어떻게 이를 쓰고 있는지 알려주세요... M2에는 아직 참조 문서가 없지만 더 자세해진 javadoc과 test suite이 있습니다. 앞으로 blog에도 예제들을 올릴 것이고요.

우린 이미 마지막 mileston 작업을 하는 중입니다. M3에서는 annotation 기반 factory method, (JSR-303 "bean validation"을 기초로 하는) 선언적 validation, 새 XML 설정 namespace(orm, scheduling)를 선보일 예정입니다. Spring MVC는 conversation 관리 관점에서 정밀 검토를 할 것이고요. 우리는 또한 필요해지는대로 JSP 2.0이 Spring과 매끄럽게 연동되도록 준비 중입니다.

참고 문헌

:
Posted by 하얀 말