成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Spring 3.0新增特性與功能前瞻

開發 后端
Spring 3.0版對Java5、模塊組織等方面做出了改進,并對Java EE 6和嵌入式數據庫等做出了很好的特性支持。

51CTO之前曾報道過Spring 3.0即將發布的消息,大家對Spring的新版期盼已經,畢竟Spring 2.0,發布于2006年10月,Spring 2.5,發布于2007年11月;如果你使用Srping進行項目開發,肯定對目前Srping的功能能否滿足你想買的需求提出過質疑,并期望某些功能可以在Spring 3.0版得到改進和支持.下面我們來看看Spring 3.0版的一些新增功能和特性.

Java SE與Java EE支持

現在的Spring Framework基于Java 5,并且完全支持Java 6。而且,它兼容J2EE 1.4及Java EE 5,同時還引入了一些對Java EE 6的早期支持。

1、Java 5

為了利用Java 5特性,例如泛型、可變參數和其他語言改進,整個框架的代碼都被修改過了。我們盡可能地保證代碼能夠向后兼容。我們現在一致使用的泛型Collection和Map,一致使用泛型FactoryBean,并且在Spring AOP API中有一致的橋接方法解析。泛型ApplicationListener只會自動接收特定的事件類型。所有的回調接口,例如TransactionCallback和HibernateCallback,可以聲明泛型結果值了。總而言之,Spring的核心代碼經過了徹底的修改,并為Java 5做了優化。

為了與Java 5的java.util.concurrent機制緊密結合,Spring的TaskExecutor抽象也被修改過了。我們為Callable和Future提供了***的支持,還有ExecutorService適配器、ThreadFactory集成等等。這些特性都盡可能與JSR-236(Concurrency Utilities for Java EE 6)保持一致。此外,針對通過新的@Async注解(或者EJB 3.1的@Asynchronous注解)進行異步方法調用,我們也提供了相應的支持。

2、改進的文檔

Spring的參考文檔也不斷被更新著,這樣它才能完整地反映Spring 3.0的變化和新特性。盡管我們進了一切努力不在文檔中犯錯,但還是有些漏網之魚。如果你發現了一些拼寫錯誤或者更嚴重的錯誤,并能在午餐時擠出點時間的話,請將這些錯誤告訴Spring團隊,提個事件 就可以了。

3、新的入門教程

現在有了一份新的開發基礎Spring 3.0 MVC Web應用程序的教程。這個教程是一份獨立的文檔,你能在Spring Documentation 頁面中找到它。

注意:要到Spring 3.0正式發布時才能獲得該文檔。
 
4、新的模塊組織結構和構建系統

我們修改了框架的模塊,并用每個模塊jar一棵源碼樹的方式分別進行管理:

• org.springframework.aop
• org.springframework.beans
• org.springframework.context
• org.springframework.context.support
• org.springframework.expression
• org.springframework.instrument

從Spring Web Flow 2.0開始,我們使用了新的Spring構建系統。這給了我們:

◆基于Ivy的“Spring Build”系統

◆一致的部署過程

◆一致的依賴管理方式

◆一致的OSGi Manifest生成方式

5、新特性概述

以下是Spring 3.0新特性的列表,我們稍后會更詳細地介紹它們。

◆Spring Expression Language

◆IoC增強 / 基于Java的Bean元數據

◆從Spring Web Services遷移過來的對象 / XML映射功能(OXM)

◆全面的REST支持

◆更多@MVC注解

◆聲明式模型驗證

◆Java EE 6早期支持

◆嵌入式數據庫支持#p#

針對Java 5的核心API更新

BeanFactory接口會盡可能地返回確定類型的Bean實例:

◆T getBean(String name, Class requiredType)

◆Map getBeansOfType(Class type)

Spring的TaskExecutor接口現在擴展了java.util.concurrent.Executor接口:

擴展了的AsyncTaskExecutor支持帶Future的標準Callable

新的基于Java 5的轉換器API和SPI:

◆無狀態的ConversionService和Converter

◆取代標準JDK PropertyEditor

指定類型的ApplicationListener

Spring Expression Language

Spring引入了一種表達式語言,它在語法上很像Unified EL,但提供了更多功能。在定義XML和基于注解的Bean定義的時候,可以使用該表達式語言,此外,它也是Spring Portfolio中表達式語言支持的基礎。該功能的詳細信息請參考Spring Expression Language(SpEL)一章。

Spring Expression Language為Spring社區提供了一種能在所有Spring Portfolio產品中使用的、有良好支持的表達式語言。它的語言特性是由Spring Portfolio中項目的需求來驅動的,其中也包含工具的需求,例如,在基于Eclipse的SpringSource Tool Suite中的代碼補全支持。

下面是一個例子,演示了如何用它來配置數據庫屬性。

  1. <bean class="mycompany.RewardsTestDatabase"> 
  2. <property name="databaseName" 
  3. value="#{systemProperties.databaseName}"/> 
  4. <property name="keyGenerator" 
  5. value="#{strategyBean.databaseKeyGenerator}"/> 
  6. bean> 

如果你更喜歡用注解來配置你的組件,該功能也同樣適用:

  1. @Repository    
  2. public class RewardsTestDatabase {     
  3. @Value("#{systemProperties.databaseName}")     
  4. public void setDatabaseName(String dbName) { … }     
  5. @Value("#{strategyBean.databaseKeyGenerator}")     
  6. public voidsetKeyGenerator(KeyGenerator kg) { … }     
  7. }    

控制反轉(Inversion of Control,IoC)容器

基于Java的Bean元數據

如今,Java Config項目中的一些核心特性已經被添加到了Spring Framework項目中,這意味著現在Spring直接支持下面的這些注解了:

◆@Configuration

◆@Bean

◆@Primary

◆@Lazy

◆@Import

◆@Value

以下是一個Java類使用新JavaConfig特性提供基本配置的例子:

  1. @Configuration 
  2. public class AppConfig{  
  3. private @Value("#{jdbcProperties.url}") String jdbcUrl;  
  4. private @Value("#{jdbcProperties.username}") String username;  
  5. private @Value("#{jdbcProperties.password}") String password;  
  6.  
  7. @Bean 
  8. public FooService fooService() {  
  9. return new FooServiceImpl(fooRepository());  
  10. }  
  11.  
  12. @Bean 
  13. public FooRepository fooRepository() {  
  14. return new HibernateFooRepository(sessionFactory());  
  15. }  
  16.  
  17. @Bean 
  18. public SessionFactory sessionFactory() {  
  19. // wire up a session factory  
  20. AnnotationSessionFactoryBean asFactoryBean =  
  21. new AnnotationSessionFactoryBean();  
  22. asFactoryBean.setDataSource(dataSource());  
  23. // additional config  
  24. return asFactoryBean.getObject();  
  25. }  
  26.  
  27. @Bean 
  28. public DataSource dataSource() {  
  29. return new DriverManagerDataSource(jdbcUrl, username, password);  
  30. }  

要讓上面的代碼運行起來,你需要將如下組件掃描配置加入應用程序上下文XML文件中

  1. <context:component-scan 
  2. base-package="com.myco.config"/> 

#p#

在組件中定義Bean元數據

Spring組件中也同樣支持添加了@Bean注解的方法,它們為容器提供了一個工廠Bean。

數據層

對象 / XML映射功能(OXM)已經從Spring Web Services項目遷移到核心Spring Framework中了,可以在org.springframework.oxm包中找到它。

Web層

Web層中最令人興奮的新特性莫過于對構建RESTful Web服務和Web應用程序的支持了。此外,還有一些用于Web應用程序中的新注解。

全面的RESTful支持

通過對現有的注解驅動MVC Web框架的擴展,Spring Framework提供了構建RESTful應用程序的服務器端支持。客戶端的支持則由RestTemplate類提供,它和JdbcTemplate、JmsTemplate這些模板類非常類似。無論是服務器端還是客戶端的REST功能,都使用了HttpConverter來簡化對象與對應的HTTP請求/應答中的表述的轉換。

MarshallingHttpMessageConverter用到了之前提到的OXM功能。

更多@MVC注解

新增了幾個注解,例如@CookieValue和@RequestHeaders。詳見“使用@CookieValue注解映射Cookie值”和“用@RequestHeader注解映射請求頭屬性”。

聲明式模型驗證

Hibernate Validator,JSR303

進行中,未包括在Spring 3.0 M3中。

Java EE 6早期支持

我們提供了對使用@Async注解(或EJB 3.1的@Asynchronous注解)進行異步方法調用的支持,還支持JSF 2.0、JPA 2.0等。

進行中,未包括在Spring 3.0 M3中。

支持嵌入式數據庫

目前已經提供了對嵌入式Java數據庫引擎的支持,包括HSQL、H2和Derby。

【編輯推薦】

  1. Spring 3.0即將發布 新增Spring表達式語言
  2. Spring 3.0 M3發布 強化對標注的支持
  3. 專家Isvy談Spring 3.0
  4. 企業級Java云 SpringSource云工廠初探
  5. Spring實例化Bean的三種方式
責任編輯:佚名 來源: JavaEye
相關推薦

2010-01-15 19:48:39

BMCIT運維BSM

2022-06-30 06:00:30

Edge瀏覽器

2009-06-17 16:21:43

Spring3.0新功

2018-06-06 14:30:38

Spring BootApplication事件

2012-07-10 10:08:32

紅帽RHEL 7

2022-11-08 15:44:36

Xfce

2020-04-27 09:21:25

Android谷歌功能

2009-06-22 16:59:33

POJOSpringEJB 3.0

2009-07-27 09:46:28

Silverlight

2011-07-27 16:12:35

Linux KerneLinux內核

2010-09-29 14:08:31

2013-06-09 16:26:56

Windows 8.1

2009-09-18 15:53:37

C# 3.0新語言特性

2025-05-07 03:15:00

NacosAPIMCP

2009-08-27 16:24:48

擴展方法C# 3.0新特性

2009-09-17 09:39:28

Chrome 3.0谷歌瀏覽器

2015-03-02 14:09:11

CrossApp更新

2013-06-06 17:22:36

蘋果WWDC2013

2021-10-22 16:20:29

區塊鏈數字貨幣技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精品国产99 | 日韩不卡一区二区 | 99精品国产成人一区二区 | 欧美精品在线看 | 久久久激情 | 美女在线观看国产 | 免费高清av | 在线观看午夜视频 | 国产午夜精品一区二区 | 久草新视频 | 久久中文字幕一区 | 国内精品视频免费观看 | 亚洲一区国产精品 | 中文字幕日韩一区二区 | 久久精品99久久 | 亚洲风情在线观看 | 亚洲欧美在线观看 | 免费日韩网站 | 在线免费观看黄色 | 欧美一级在线 | 最新免费av网站 | 日韩免| 97日韩精品 | 日韩中文一区 | 91精品久久久久久久久 | 羞羞午夜 | 9久久婷婷国产综合精品性色 | 亚洲欧美综合精品另类天天更新 | 成人免费久久 | 99精品欧美| av网址在线| 精品国产黄a∨片高清在线 www.一级片 国产欧美日韩综合精品一区二区 | 久草网址 | www.蜜桃av| 久久99精品久久久久 | 色桃网 | 午夜精品久久 | 国产黄色大片网站 | 精品久久久久久久久久 | 91视频观看 | a欧美 |