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

正文內(nèi)容

項目實踐精解:基于struts-spring-hibernate的java應用開發(fā)(參考版)

2025-07-01 22:29本頁面
  

【正文】 釋ContextRefreshedEvent當Application。 內(nèi)置事件事Spring提供了3個標準事件,如表62所示。如果上下文中部署了一個實現(xiàn)了ApplicationListener接口的bean,每次一個ApplicationEvent發(fā)布到ApplicationContext時,那個bean就會被通知。使用JDK通過ResourceBundle解析信息的標準方式,任何解析信息的請求都會被處理。 /property valuewindows/valuevalueformat/value property name=basenamesbeansStaticMessageSource很少被使用,但是它提供以編程的方式向source增加信息。Spring目前提供了兩個MessageSource的實現(xiàn),它們是ResourceBundleMessageSource和StaticMessageSource。如果有,它將會把找到的bean作為Message Source。如果找到了這樣的一個bean,所有對上述方法的調(diào)用將會被委托給找到的message source。String getMessage(MessageSourceResolvable resolvable、Locale locale):上面兩個方法使用的所有屬性都可以封裝到一個叫做MessageSourceResolvable的類中,你可以通過這個方法直接使用它。傳入的參數(shù)args被用來代替信息中的占位符,這個是通過Java標準類庫的MessageFormat實現(xiàn)的。String getMessage (String code、Object[] args、String default、Locale loc):這個方法是從MessageSource取得信息的基本方法。同NestingMessageSource一起使用,就能夠處理分級的信息,這些是Spring提供的處理信息的基本接口。接下來,敘述ApplicationContext在BeanFactory的基本能力上增加的功能。為了以一種更像面向框架的方式工作,context包使用分層和有繼承關系的上下文類,包括:1.MessageSource,提供對i18n消息的訪問;2.資源訪問,比如URL和文件;3.事件傳遞給實現(xiàn)了ApplicationListener接口的bean;4.載入多個(有繼承關系)上下文類,使得每一個上下文類都專注于一個特定的層次,比如應用的Web層。多數(shù)用戶可以以一種完全的聲明式方式來使用ApplicationContext,甚至不用去手工創(chuàng)建它,但是卻去依賴像ContextLoader的支持類,在J2EE的Web應用的啟動進程中用它啟動ApplicationContext。從那之后的任何生命周期方面的事情都由客戶端來處理。 通過定義,Spring無法管理一個nonsingleton/prototype bean的整個生命周期,因為當它創(chuàng)建之后,它被交給客戶端,而且容器根本不再跟蹤它了。 class= singleton=false/bean name=yetAnotherExample客戶端每次向BeanFactory請求都會創(chuàng)建新的exampleBean,而AnotherExample僅僅被創(chuàng)建一次,在每次對它請求都會返回這個實例的引用。所以,僅僅在絕對需要的時候才把模式改成prototype。Beans默認被部署為singleton模式,除非你指定。如果bean以nonsingleton、prototype模式部署的話,對這個bean的每次請求都會創(chuàng)建一個新的bean實例。5.Singleton的使用與否Beans被定義為兩種部署模式中的一種:singleton或nonsingleton(后一種也叫做prototype,盡管這個名詞用的不精確)。然而,XML規(guī)范嚴格限定了在XML ID中合法的字符。id屬性允許你指定一個id,并且它在XML DTD(定義文檔)中作為一個真正的XML元素的ID屬性被標記,所以XML解析器能夠在其他元素指回向它的時候做一些額外的校驗。一個bean差不多總是只有一個id,但是,如果一個bean有超過一個的id,那么另外的那些本質(zhì)上可以認為是別名。4.Bean的標志符(id與name)每一個bean都有一個或多個id(也叫做標志符或名字,這些名詞說的是一回事)。 factorybean=myFactoryBean class=...下面是一個例子。使用這種機制,class屬性必須為空,而且factorybean屬性必須指定一個bean的名字,這個bean一定要在當前的bean工廠或者父bean工廠中,并包含工廠方法。 factorymethod=createInstance/至于為工廠方法提供(可選的)參數(shù),以及對象實例被工廠方法創(chuàng)建后設置實例屬性,將會在后面敘述。bean id=exampleBean注意,這個bean定義并沒有指定返回對象的類型,只指定包含工廠方法的類。用戶可以使用這樣的bean定義在遺留代碼中調(diào)用靜態(tài)工廠。2)通過靜態(tài)工廠方法創(chuàng)建bean當你定義一個使用靜態(tài)工廠方法創(chuàng)建的bean,同時使用class屬性指定包含靜態(tài)工廠方法的類,這個時候需要factorymethod屬性來指定工廠方法名。 class=/bean name=anotherExample使用XmlBeanFactory你可以像下面這樣定義你的bean class。雖然很多使用Spring的人喜歡在BeanFactory中用真正的JavaBean(僅包含一個默認的(無參數(shù)的)構(gòu)造函數(shù),在屬性后面定義相對應的setter和getter方法),但是在你的BeanFactory中也可以使用特殊的非bean樣式的類。然而,根據(jù)bean使用的IoC類型,你可能需要一個默認的(空的)構(gòu)造函數(shù)。這就是說,被創(chuàng)建的類不需要實現(xiàn)任何特定的接口或者按照特定的樣式進行編寫。在比較少的情況下,BeanFactory調(diào)用某個類的靜態(tài)的工廠方法來創(chuàng)建bean,class屬性指定了實際包含靜態(tài)工廠方法的那個類(至于靜態(tài)工廠方法返回的bean的類型是同一個類還是完全不同的另一個類,這并不重要)。3.bean類class屬性通常是強制性的,有兩種用法。 明classbean的類id和namebean的標志符 (id與name)singleton或prototypeSingleton的使用與否構(gòu)造函數(shù)參數(shù)設置bean的屬性和合作者bean的屬性設置bean的屬性和合作者自動裝配模式自動裝配協(xié)作對象依賴檢查模式依賴檢查初始化模式生命周期接口析構(gòu)方法生命周期接口注意。 Bean定義的解釋特這些元素在表61中列出,它們每一個都有更詳細的說明的鏈接。和這個bean工作相關的其他bean:比如它的合作者(同樣可以作為屬性或者構(gòu)造函數(shù)的參數(shù)),這個也被叫做依賴。bean行為配置元素:它聲明這個bean在容器的行為方式(比如prototype或singleton、自動裝配模式、依賴檢查模式、初始化和析構(gòu)方法)。classname:這通常是bean真正的實現(xiàn)類。/beans ... /bean bean id=... class=...beans在一個XmlBeanFactory中,根節(jié)點beans中包含一個或多個bean元素。編程操作BeanFactory將會在后面提到,下面部分將集中描述BeanFactory的配置。例如,Web層提供支持代碼,在J2EE Web應用啟動過程中自動載入一個Spring ApplicationContext。// of course, an ApplicationContext is just a BeanFactoryBeanFactory factory = (BeanFactory) appContext。ClassPathXmlApplicationContext appContext = new ClassPathXmlApplication Context(XmlBeanFactory factory = new XmlBeanFactory(res)。也可以使用下列代碼實例化BeanFactory。InputStream is = new FileInputStream()。雖然大多數(shù)情況下,幾乎所有被BeanFactory管理的用戶代碼都不需要知道BeanFactory,但是BeanFactory還是以某種方式實例化。,這個接口有多個實現(xiàn)。這些bean通常會彼此合作,因而它們之間會產(chǎn)生依賴。Spring框架使用JavaBean屬性和配置數(shù)據(jù)來指出必須設置的依賴關系。在每個用戶都需要自己的對象時,原型模型最適合。Singleton是默認的也是最常用的對象模型,對于無狀態(tài)服務對象很理想。BeanFactory支持兩個對象模型。下一個最高級抽象是BeanFactory接口,它是工廠設計模式的實現(xiàn),允許通過名稱創(chuàng)建和檢索對象。Spring ,它的設計目標是與JavaBean組件一起使用。Girl girl = (Girl) ()。()。 }} ()。 } = kissable。public class Girl { /property property name=kissable bean id=boy class=Boy/ }} ()。 } = kissable。public class Girl { /ponent ponent name=kissable class=Boy }} ()。 } kissable = (Kissable) (kissable)。public class Girl implements Servicable {IoC的3種依賴注入類型如下。典型的IoC可以如圖66所示。 void kiss(Boy boy){通過代碼表示如下。 }}第3種方式是父母包辦,如圖65所示。 Boy boy = ()。public class Girl { 第2種方式是親友介紹,如圖64所示。 void kiss(){通過代碼表示如下。下面通過一個生動形象的例子介紹控制反轉(zhuǎn)。IoC還有另外一個名字——“依賴注入(Dependency Injection)”。這也就是所謂“控制反轉(zhuǎn)”的概念所在。毫無疑問,這樣的對象可以在不同J2EE環(huán)境(Web或EJB)、獨立應用程序、測試環(huán)境之間重用。Spring框架的功能可以用在任何J2EE服務器中,大多數(shù)功能也適用于不受管理的環(huán)境。Spring MVC框架:MVC框架是一個全功能的構(gòu)建Web應用程序的MVC實現(xiàn)。所以,Spring框架支持與Jakarta Struts的集成。所有這些都遵從Spring的通用事務和DAO異常層次結(jié)構(gòu)。Spring DAO的面向JDBC的異常遵從通用的DAO異常層次結(jié)構(gòu)。Spring DAO:JDBC DAO(Data Access Object)抽象層提供了有意義的異常層次結(jié)構(gòu),可用該結(jié)構(gòu)來管理異常處理和不同數(shù)據(jù)庫供應商拋出的錯誤消息。Spring AOP模塊為基于Spring的應用程序中的對象提供了事務管理服務。Spring AOP:通過配置管理特性,Spring AOP模塊直接將面向方面的編程功能集成到了Spring框架中。Spring上下文:Spring上下文是一個配置文件,向Spring框架提供上下文信息。核心容器的主要組件是BeanFactory,它是工廠模式的實現(xiàn)。每個模塊的功能如下。Spring模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建、配置和管理bean的方式,如圖61所示。介紹完項目概述及開發(fā)工具和環(huán)境后,以下幾章具體展開StrutsSpringHibernate的要點。圖331圖330 連接后的數(shù)據(jù)庫結(jié)構(gòu)這說明你已經(jīng)和數(shù)據(jù)庫建立了正確的連接。 圖328 建立數(shù)據(jù)庫簡表我們的數(shù)據(jù)庫密碼為空,所以不需改變,單擊“OK”按鈕,連接后的數(shù)據(jù)庫結(jié)構(gòu)如圖329所示。由于已經(jīng)配置了MySQL的驅(qū)動信息,其他選項會自動生成。 增加了DB Browser Tab在空白處單擊右鍵,選擇new建立數(shù)據(jù)庫簡表,如圖327所示。 圖325③ 配置MySQL數(shù)據(jù)庫瀏覽器(DB Browser)選擇window→Show view→other→DB Browser,數(shù)據(jù)庫瀏覽如圖325所示。 圖324 圖323編輯驅(qū)動界面 將Example URL改為jdbc:mysql://localhost:3306/bookstoressh,之后選中Driver Libraries,單擊“new”按鈕,編輯驅(qū)動包界面如圖323所示。驅(qū)動界面選中MMMySQL Driver,單擊“Edit”按鈕,編輯驅(qū)動界面如圖322所示。② 配置MySQL驅(qū)動接下來在window→Preferences→MyEclipse→Database Explorer中選定Drivers,驅(qū)動界面如圖321所示。如果成功的話,你就會在Package Explorer里看到一個新的bookstoressh工程。圖320 在左邊的Package Explorer面板里單擊右鍵選擇new→project…在跳出菜單里選擇MyEclipse→J2EE Projects→Web Project。 在此書
點擊復制文檔內(nèi)容
醫(yī)療健康相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1