freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第2講基于開源框架的企業(yè)級信息系統(tǒng)開發(fā)技術(shù)-課堂xxxx-資料下載頁

2025-01-16 20:11本頁面
  

【正文】 on =getConnection。 (false)。 // JDBC調(diào)用相關(guān)的 SQL語句 ()。 Hibernate事務(wù)管理 ? 下面的代碼不會對數(shù)據(jù)庫產(chǎn)生任何效果: ? 如果要使代碼真正作用到數(shù)據(jù)庫,必須顯示地調(diào)用Transaction指令: session session=()。 (room)。 ()。 Session session =()。 Transaction tx=()。 (room)。 ()。 ()。 Hibernate事務(wù)管理 ? 2.基于 JTA的事務(wù)管理概念 JTA( Java Transaction API)是由 Java EE Transaction Manager去管理的事務(wù)。其最大的特點是 調(diào)用UserTransaction接口的 begin、 mit和 rollback方法來完成事務(wù)范圍的界定、事務(wù)的提交和回滾 。 JTA可以實現(xiàn)統(tǒng)一事務(wù)對應(yīng)不同的數(shù)據(jù)庫 。 JTA主要用于分布式的多個數(shù)據(jù)源的兩階段提交的事務(wù),而 JDBC的 Connection提供單個數(shù)據(jù)源的事務(wù)。 后者因為只涉及一個數(shù)據(jù)源,所以其事務(wù)可以由數(shù)據(jù)庫自己單獨實現(xiàn)。而 JTA事務(wù)因為其分布式和多數(shù)據(jù)源的特性,不可能由任何一個數(shù)據(jù)源實現(xiàn)事務(wù)。因此, JTA中的事務(wù)是由“事務(wù)管理器”實現(xiàn)的。它會在多個數(shù)據(jù)源之間統(tǒng)籌事務(wù),具體使用的技術(shù)就是所謂的“兩階段提交”。 Hibernate事務(wù)管理 ?2.基于 JTA的事務(wù)管理概念 ■ 配置 : 默認(rèn)是: : ■ 在程序中調(diào)用 UserTransaction接口 tx = new InitialContext().lookup()。 Session s1 = ()。 ... ()。 ()。 ... Session s2 = ()。 ... ()。 ()。 ()。 Hibernate事務(wù)管理 ?3.鎖 ■ 業(yè)務(wù)邏輯的實現(xiàn)過程中,往往需要保證數(shù)據(jù)訪問的排他性。如在金融系統(tǒng)的日終結(jié)算處理中,希望對某個結(jié)算時間點的數(shù)據(jù)進行處理,而不希望在結(jié)算過程中(可能是幾秒,也可能是幾個小時),數(shù)據(jù)再發(fā)生變化。此時,需要通過一些機制來保證這些數(shù)據(jù)在某個操作過程中不會被外界修改,這樣的機制就是所謂的“鎖”,即給選定的目標(biāo)數(shù)據(jù)上鎖,使其無法被其他程序修改。 ■ Hibernate支持兩種鎖機制,悲觀鎖( Pessimistic Locking)和樂觀鎖( Optimistic Locking)。 企業(yè)級信息系統(tǒng)開發(fā)技術(shù) 濟南大學(xué)信息學(xué)院 劉鹍 第 5章 Spring應(yīng)用 第 5章 Spring應(yīng)用 ?Spring是一個開源框架 它由 Rod Johnson創(chuàng)建 ?目的: ■ 解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性 ?功能: ■ 使用基本的 JavaBean代替 EJB ■ 提供了更多的企業(yè)應(yīng)用功能 ?范圍: ■ 任何 Java應(yīng)用 ?Spring容器框架 =一個輕量級的控制反轉(zhuǎn) (IoC)+面向切面 (AOP) Spring之父 : Rod Johnson 第 5章 Spring應(yīng)用 ? 輕量 ——從大小與開銷兩方面而言 Spring都是輕量的。完整的 Spring框架可以在一個大小只有 1MB多的 JAR文件里發(fā)布。并且 Spring所需的處理開銷也是微不足道的。 ? 控制反轉(zhuǎn) ——Spring通過一種稱作控制反轉(zhuǎn)( IoC)的技術(shù)促進了松耦合。當(dāng)應(yīng)用了 IoC,一個對象依賴的其它對象會通過被動的方式傳遞進來,而不是這個對象自己創(chuàng)建或者查找依賴對象。 ? 面向切 面 ——Spring提供了面向切面編程的豐富支持。 ? 容器 ——Spring包含并管理應(yīng)用對象的配置和生命周期,在這個意義上它是一種容器。 ? 框架 ——Spring可以將簡單的組件配置、組合成為復(fù)雜的應(yīng)用。在 Spring中,應(yīng)用對象被聲明式地組合,典型地是在一個 XML文件里。 Spring也提供了很多基礎(chǔ)功能(事務(wù)管理、持久化框架集成等。 第 5章 Spring應(yīng)用 Spring概述 Spring核心機制 ——依賴注入 Spring核心接口及基本配置 Spring AOP Spring事務(wù)支持 Spring概述 ? Spring框架的主要優(yōu)勢之一是其 分層架構(gòu) ,分層架構(gòu)允許選擇使用任一個組件,同時為 Java EE 應(yīng)用程序開發(fā)提供集成的框架。 Spring 框架的分層架構(gòu),由 7 個定義良好的模塊組成。 Spring 模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理 Bean 的方式,如圖 。 圖 Spring框架的組件結(jié)構(gòu)圖 Spring概述 ? 組成 Spring 框架的每個模塊(或組件)都可以單獨存在,或者與其他一個或多個模塊聯(lián)合實現(xiàn)。 ? 各模塊的功能如下: ■ ① 核心容器。提供 Spring框架的基本功能,其主要組件是BeanFactory,是工廠模式的實現(xiàn)。 ■ ② Spring 上下文。向 Spring 框架提供上下文信息,包括企業(yè)服務(wù),如 JNDI、 EJB、電子郵件、國際化、校驗和調(diào)度等。 Spring概述 ?各模塊的功能如下: ■③ Spring AOP。通過配置管理特性,可以很容易地使 Spring 框架管理的任何對象支持 AOP。 Spring AOP 模塊直接將面向方面編程的功能集成到 Spring框架中。它為基于 Spring 應(yīng)用程序的對象提供了事務(wù)管理服務(wù)。 ■④ Spring DAO。 JDBC DAO 抽象層提供了有用的異常層次結(jié)構(gòu),用來管理異常處理和不同數(shù)據(jù)庫供應(yīng)商拋出的錯誤消息。異常層次結(jié)構(gòu)簡化了錯誤處理,并且極大地降低了需要編寫的異常代碼數(shù)量(如打開和關(guān)閉連接)。 Spring概述 ■⑤ Spring ORM。 Spring 框架插入了若干 ORM框架,提供 ORM的對象關(guān)系工具,其中包括 JDO、 Hibernate和 iBatis SQL Map,并且都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)。 ■⑥ Spring Web 模塊。為基于 Web 的應(yīng)用程序提供上下文。它建立在應(yīng)用程序上下文模塊之上,簡化了處理多份請求及將請求參數(shù)綁定到域?qū)ο蟮墓ぷ鳌?Spring 框架支持與 Jakarta Struts 的集成。 ■⑦ Spring MVC 框架,是一個全功能構(gòu)建 Web應(yīng)用程序的 MVC 實現(xiàn)。通過策略接口實現(xiàn)高度可配置, MVC 容納了大量視圖技術(shù),其中包括 JSP、 Velocity、 Tiles、 iText和 POI。 第 5章 Spring應(yīng)用 Spring概述 Spring核心機制 ——依賴注入 Spring核心接口及基本配置 Spring AOP Spring事務(wù)支持 工廠模式 ?簡單工廠 Spring注入的兩種方式 ? 1. 設(shè)置注入 ■ 設(shè)置注入是通過 setter方法注入被調(diào)用者的實例。這種方法簡單、直觀,很容易理解,因而 Spring的依賴注入被大量使用,下面舉例說明。 ■ 創(chuàng)建一個 Java Project,命名為“ FactoryExample1”。在項目的 src文件夾下建立下面的源文件。 ■Human的接口, ,代碼如下: ■Language接口, ,代碼如下: public interface Language { public String kind()。 } public interface Human { void speak()。 } Spring注入的兩種方式 ? 下面是 Human實現(xiàn)類 : ? 下面是 Language實現(xiàn)類 : public class English implements Language{ public String kind() { return 中國人也會說英語! 。 } } public class Chinese implements Human{ private Language lan。 public void setLan(Language lan) { = lan。 } public void speak() { (())。 } } Spring注入的兩種方式 ? 下面通過 Spring的配置文件來完成其對象的注入。代碼如下: property元素用來指定需要容器注入的屬性, lan屬性需要容器注入, ref就指向 lan注入的 id Spring注入的兩種方式 ? 測試代碼如下: ? 程序執(zhí)行結(jié)果如圖 。 import 。 import 。 public class Test { public static void main(String[] args) { ApplicationContext ctx = new FileSystemXmlApplicationContext(src/)。 Human human = null。 human = (Human) (chinese)。 ()。 } } 圖 程序運行結(jié)果 Spring注入的兩種方式 ? 2. 構(gòu)造注入 ■ 只要對前面的 Chinese類進行簡單的修改: public class Chinese implements Human{ private Language lan。 public Chinese(){}。 // 構(gòu)造注入所需要的帶參數(shù)的構(gòu)造函數(shù) public Chinese(Language lan){ =lan。 } public void speak() { (())。 } } Spring注入的兩種方式 ? 配置文件也需要做簡單的修改: 第 5章 Spring應(yīng)用 Spring概述 Spring核心機制 ——依賴注入 Spring核心接口及基本配置 Spring AOP Spring事務(wù)支持 Spring核心接口 ? 1. BeanFactory 在 Spring中有幾種 BeanFactory的實現(xiàn),其中最常使用的是 . 。它根據(jù) XML文件中的定義裝載 Bean。 要創(chuàng)建 XmlBeanFactory,需要傳遞一個。 InputStream對象提供XML文件給工廠。 Spring核心接口 ? 1. BeanFactory 下面的代碼片段使用一個 Bean XML定義文件給 XmlBeanFactory: 這行簡單的代碼告訴 Bean Factory從 XML文件中讀取Bean的定義信息,但是現(xiàn)在 Bean Factory沒有實例化 Bean,Bean被延遲載入到 Bean Factory中,就是說 Bean Factory會立即把 Bean定義信息載入進來,但是 Bean只有在需要的時候才被實例化。 為了從 BeanFactory得到 Bean,只要簡單地調(diào)用 getBean()方法,把需要的 Bean的名字當(dāng)做參數(shù)傳遞進去就行了。由于得到的是 Object類型,所以要進行強制類型轉(zhuǎn)化。 BeanFactory factory = new XmlBeanFactory(new FileInputStream( ))。 MyBean myBean = (MyBean)(“myBean”)。 Spring核心接口 ? 2. ApplicationContext 兩者都是載入 Bean定義信息,裝配 Bean,根據(jù)需要分發(fā)Bean。但是 ApplicationContext提供了更多功能: ■ ① 應(yīng)用上下文提供了文本信息解析工具,包括對國際化的支持。 ■ ② 應(yīng)用上下文提供了載入文本資源的通用方法,如載入圖片。 ■ ③ 應(yīng)用上下文可以向注冊為監(jiān)聽器的 Bean發(fā)送事件。 由于它提供的附加功能,幾乎所有的應(yīng)用系統(tǒng)都選擇ApplicationContext,而不是 BeanFactory。 在 ApplicationContext的諸多實現(xiàn)中,有三個常用的實現(xiàn): ■ ClassPathXmlApplicationContext:從類路徑中的 XML文件載入上下文定義信息,把上
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1