技術7.1spring3新特性一、首先模塊的組織更加細致從那么多jar分包就看出來_第1頁
技術7.1spring3新特性一、首先模塊的組織更加細致從那么多jar分包就看出來_第2頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Spring3.0 新特性一、首先,模塊的組織更加的細致,從那么多的jar 分包就看的出來:Spring 的構建系統以及依賴管理使用的是Apache Ivy,從源碼包看出,也使用了Maven。Maven 確實是個好東西,好處不再多言,以后希望能進一步用好它。二、新特性如下:Spring ExpresLanguage (Spring 表達式語言)IoC enhancements/Java based bean metadata (Ioc 增強/基于 Java 的 bean 元數據)General-pure type conver格式化系統)system and UI field formatti

2、ng system (通用類型轉換系統和 UI 字段Object to XML mapfunctionality (OXM) moved from Spring Web Serviproject (對象到XML 映射功能從Spring Web Servi項目移出)Comprehensive REST support (廣泛的REST 支持)MVC additions (MVC 增強)Declarative mvalidation (式模型驗證)Early support for Java EE 6 (提前對Java EE6 提供支持)Embedded database support (數據庫

3、的支持)三、針對Java 5 的API 升級1、BeanFactory 接口盡可能返回明確的 bean 實例,例如:T getBean(String name, Class requiredType)Map getBeansOfType(Class type)Spring3 對泛型的支持,又進了一步。個人建議泛型應該多用,有百利而無一害!2、Spring 的TaskExecutor 接口現在繼承自java.util.concurrent.Executor:擴展的子接口AsynkExecutor 支持標準的具有返回結果Futures 的Callables。任務計劃,個人還是更喜歡Quartz。3

4、、新的基于Java5 的 API 和SPI 轉換器無狀態的ConverService 和 Converters取代標準的JDK PropertyEditors類型化的ApplicationListener,這是一個實現“觀察者設計模式”使用的事件器。基于事件的編程模式,好處多多,在項目中應該考慮使用,基于事件、狀態遷移的設計思路,有助于理清流程,和減少項目的耦合度。四、Spring 表達式語言Spring 表達式語言是一種從語法上和表達式語言(Unified EL)相類似的語言,但提供的重要功能。它可以在基于 XML 配置文件和基于注解的bean 配置中使用,并作為基礎為跨 Spring po

5、rtfolio用表達式語言提供支持。使接下來,是一個表達式語言如何用于配置一個數據庫安裝中的屬性的示例:如果你更愿意使用注解來配置你的組件,那么這種功能同樣可用:Reitory public class RewardsTestDatabase Value(#systemProperties.databaseName)public void setDatabaseName(String dbName) Value(#strategyBean.databaseKeyGenerator)public voidsetKeyGenerator(KeyGenerator kg) 又多一種表達式語言,造的運

6、動還在繼續中!五、基于Java 的bean 元數據JavaConfig 項目中的一些特性已經集成到了Spring 中來,這意味著如下這些特性現在已經可用了:ConfigurationBeanDependsOnPrimaryLazyImportValue又來一堆的注解,無語了,感覺還是配置文件方便!:(這兒有一個例子,關于一個Java 類如何使用新的JavaConfig 特性提供基礎的配置信息:package.exle.config;Configurationpublic class AppConfig private Value(#jdbcProperties.url) String jdbc

7、Url;private Value(#jdbcProperties.username) String username; private Value(#jdbcProperties.password) String password;Beanpublic FooService fooService() return new FooServiceImpl(fooReitory();Beanpublic FooReitory fooReitory() itory(sesreturn new HibernateFooReFactory();Beanpublic SesFactory sesFacto

8、ry() / wire up a sesAnnoionSesfactoryFactoryBean asFactoryBean =new AnnoionSesFactoryBean();asFactoryBean.setDataSource(dataSource();/ additional configreturn asFactoryBean.getObject();Beanpublic DataSource dataSource() return new DriverManagerDataSource(jdbcUrl, username, password);為了讓這段代碼開始生效,需要添加

9、如下組件掃描到最小化的應用程序上下文配置文件中:六、在組件中定義 bean 的元數據感覺Spring 提供了越來越多的注解、元數據,復雜性已經超出了當初帶來的方便本身!七、通用類型轉換系統和 UI 字段格式化系統Spring3 加入了一個通用的類型轉換系統,目前它被SpEL 用作類型轉換,并且可能被一個Spring 容器使用,用于當綁定bean 的屬性值的時候進行類型轉換。另外,還增加了一個 UI 字段格式化系統,它提供了更簡單的使用并且更強大的功能以替代 UI 環境下的JavaBean 的PropertyEditors,例如在SpringMVC 中。這個特性要好好研究下,通用類型轉換系統如果

10、果如所言的話,帶來的好處還是很多的。八、數據層對象到XML 的功能已經從Spring Web Servi項目移到了Spring 框架中。它位于.springframework.oxm 包中。OXM?研究下!時間真不夠!九、Web 層在Web 層最激動人心的新特性莫過于新增的對構件REST 風格的web 服務和web 應用的支持!另外,還新增加了一些任何web 應用都可以使用的新的注解。服務端對于REST 風格的支持,是通過擴展既有的注解驅動的MVC web 框架實現的。客戶端的支持則是RestTemplate 類提供的。無論服務端還是客戶端REST 功能,都是使用HttpConverter 來簡化對HTTP 請求和應答過程中的對象到表現層的轉換過程。MarshallingHttpMessageConverter 使用了上面提到的“對象到XML 的機制”。十、MVC 增強新增了諸如Value 和 RequestHeaders 這樣的注解等。十一、式模型驗證支持JSR 303,使用 Hibernate Validator 作為實現。十二、提前對Java EE6 提供支持提供了使用Async 注解對于異步方法調用的支持(或者

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論