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

Spring框架的事務管理應用分析

開發 后端
本文介紹Spring框架,Spring事務管理的應用,以及Spring特性的介紹。

Spring框架簡介

Spring框架是一個2003年2月才出現的開源項目,該開源項目起源自Rod Johnson在2002年末出版的《Expert One-on-One J2EE Design and Development》一書中的基礎性代碼。在該書中,Rod Johnson倡導J2EE實用主義的設計思想,而Spring框架正是這一思想的更全面和具體的實現。Spring框架由一個容器,一個配置和組織組件的框架,和一組內置的為事務、持久化和Web用戶接口提供的服務組成。作為一種輕量級的J2EE框架,Spring提供了一種有效的方式來建立和組織 J2EE應用程序。

Spring特性

IoC(Inversion of Control;控制反轉);又稱DI(Dependency Injection;依賴注入);是面向對象領域新興的編程思想;也是Spring的精髓所在。簡單地說;IoC就是指程序之間的關系由容器來控制;而不是傳統實現中由程序代碼直接操控。這也就是所謂“控制反轉”的概念所在:控制權由應用代碼轉到外部容器,控制權的轉移,也就是所謂的反轉。IoC將控制創建的職責搬進了框架中;并把它從應用代碼脫離開來。當使用Spring的IoC容器時只需指出組件需要的對象,在運行時Spring的IoC容器會根據 XML配置數據提供給它。

Spring IoC,借助于依賴注入設計模式,使得開發者不用理會對象自身的生命周期及其關系,而且能夠改善開發者對模式的使用。對于一個對象的管理不是什么困難,難就難在對整個對象群的管理。依賴注入可以讓容器管理對象,即“Don’t call me, I will call you”。這樣對象本身的生命周期以及對象之間的關系就不再讓開發者費神了。

Spring AOP,借助于Spring實現攔截器,開發者能夠實現以聲名方式使用企業級服務,比如安全性服務、事務服務。AOP 合理的補充了OOP,借助于Spring AOP,開發者能夠高效的使用J2EE服務。

Spring服務抽象,借助于各種J2EE API抽象,使得開發者能夠一致地使用J2EE 技術,而不管具體是使用什么J2EE API,借助于Spring服務抽象,使代碼大大減少,滿足“更少代碼,更少BUG”的軟件設計原則。

Spring IoC+Spring AOP+Spring服務抽象,一起形成Spring,這樣一個有機體,使構建輕量級J2EE成為可能。

Spring事務管理

Spring事務管理可以分為兩類:編程式的和聲明式的。編程式的,比較靈活,但是代碼量大,存在重復的代碼比較多;聲明式的比編程式的更靈活方便。

1.傳統使用JDBC的事務管理

以往使用JDBC進行數據操作,使用DataSource,從數據源中得到Connection,我們知道數據源是線程安全的,而連接不是線程安全的,所以對每個請求都是從數據源中重新取出一個連接。一般的數據源由容器進行管理,包括連接池。例如TOMCAT,WEBSPHERE,WEBLOGIC 等這些J2EE商業容器都提供了這個功能。

以往的我們使用JDBC在寫代碼時,事務管理可能會是這樣:

  1. Connection conn = null;  
  2. try{  
  3.  conn = DBConnectionFactory.getConnection;  
  4.  conn.setAutoCommit(false);  
  5.  //do something  
  6.  conn.commit(); //commit transcation  
  7. }catch(Exception e)  
  8. finally catch(SQLException se){ //do sth.}  
  9.  //close ResultSet,PreparedStatement,Connection   
  10.  //notice:Maybe ocurr Exception when u close rs,pstmt,conn  
  11. }  

按照以往的思路來寫代碼,代碼量比較長,而且容易疏忽,忘掉一些try/catch,引發一些異常無法catch,雖然有時候我們會寫DBTool類,來關閉這些資源,并且保證在關閉這些資源時,不向外拋異常,但是這樣做會導致額外的麻煩。

2.Spring事務管理提供的編程式

Spring提供了幾個關于事務處理的類:

TransactionDefinition //事務屬性定義

TranscationStatus //代表了當前的事務,可以提交

【編輯推薦】

  1. Spring2.0新特性點評
  2. Eclipse插件之Spring IDE
  3. Spring工作原理探秘
  4. 在Eclipse RCP中使用Spring框架
  5. Spring定時器的兩種實現方式
責任編輯:佚名 來源: Builder
相關推薦

2010-03-29 13:34:15

ibmdwSpring

2010-03-23 08:46:40

Spring

2023-10-08 08:28:10

Spring事務管理

2009-06-17 14:57:11

Spring事務管理

2009-06-30 16:57:42

Spring事務管理

2009-09-25 12:59:53

Hibernate事務

2009-06-08 17:56:00

SpringJDBC事務

2023-03-27 10:40:09

2014-08-25 09:12:47

Spring事務管理

2009-02-11 13:08:29

事務提交事務管理Spring

2009-02-11 11:14:31

事務管理事務開始Spring

2025-02-08 10:56:18

2009-06-03 10:20:11

Hibernate事務管理配置

2022-08-04 08:46:16

單體架構微服務事務管理

2009-07-17 14:03:34

ibatis DAO事務管理

2015-09-16 15:32:37

Android Tra內存管理

2009-09-29 09:44:52

Hibernate事務

2009-09-23 17:48:00

Hibernate事務

2025-02-21 08:00:00

事務管理SpringBootJava

2023-05-06 07:29:49

Spring事務傳播
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费在线性爱视频 | 少妇精品久久久久久久久久 | 成人福利在线观看 | 国产成人精品一区二区三区网站观看 | 国产欧美日韩在线播放 | 国产精品高潮呻吟久久久久 | 中文字幕一区二区三区不卡在线 | 亚洲经典一区 | 91久久久久久久 | 国产成人jvid在线播放 | 天天看逼| 国产福利一区二区 | 日韩成人免费视频 | 精品国产18久久久久久二百 | 免费黄色网址视频 | 久草视频在 | 日韩中文字幕在线 | 国产91久久久久蜜臀青青天草二 | 一区二区视频在线 | 亚洲欧美在线观看视频 | 精品视频一区二区 | 天天干视频| 日韩一区二区三区视频 | 91视频一区二区 | 久久久久国产精品人 | 成人美女免费网站视频 | 欧美一区二区三区四区五区无卡码 | 日韩在线资源 | 中文字幕日韩在线 | 一区视频 | 国产精品揄拍一区二区 | 免费久| 91在线精品一区二区 | 好好的日在线视频 | av在线播放一区二区 | 一级毛片视频 | 久久精品国产一区二区 | 先锋资源站 | 精品视频久久久久久 | 久久精品91久久久久久再现 | 日韩欧美在线免费 |