WEB INF config下配置檔案

2021-04-21 07:36:22 字數 3990 閱讀 8773

在web-inf/config下有多種配置檔案,這裡作個介紹,對專案的開發很有意義    

模版技術(tiles-config資料夾下)   、驗證技術(validation-config資料夾下)    

到這裡,或許會留意到沒有提及hibernate,有關hibernate的設定,也是通過spring來配置的,在後面的spring檔案中會看到,有關hibernate.cfg.xml則存放在classpath下,需要用到的hibernate屬性配置資訊hibernate.properties也存放在classpath下    

這些配置資訊是整個系統的裝配匯流排,通過這些xml的配置,把所有的資源串在了一起。    

這裡還要強調乙個資訊,這些配置檔案都是按照功能模組來劃分的,比如現在講解的這個系統中,除了預設的default外,還劃分了order(訂單處理系統)、admin(後台管理系統),這樣設定的優勢在於很好的擴充套件系統,降低耦合性,同時條理也比較清晰,便於管理。    

下面分別介紹一下各個主要的配置檔案內容    

1、struts(struts-config資料夾下)    

struts-config資料夾下主要有struts-config-default.xml、struts-config-admin.xml、struts-config-order.xml三個配置檔案    

這裡放置的是有關struts的配置資訊,比如form-bean、action,有關form-bean的配置和一般的struts程式沒有什麼兩樣,這裡需要說明的是action的配置    

這裡舉例乙個配置片斷:    

注意裡面的type屬性,這裡設定的是org.springframework.web.struts.delegatingactionproxy,正是通過它來使得和spring很好的結合起來,這裡你會發現沒有具體的action類,它是通過struts和spring的結合處理(action-servlets-config資料夾下)的配置檔案來實現的,這樣action類也納入到了spring容器的管理體系中去了。    

struts和spring的結合就是這樣來實現的,當然除了這種方式以外還有其他的,可以參考:關於struts中validate的幾種情況    

除了以上的配置資訊外,還有幾個重要的配置,它是結合spring、tiles、validator等框架的潤滑劑,主要是通過struts的plug-in技術來實現的,舉例如下:    

通過spring框架的contextloaderplugin,把action類交由spring容器來管理    

這裡需要說明的一點是:是否需要在struts-config-default.xml檔案中一起載入所有的action-servlets資訊,還是對應著分別載入。當然現在的系統中是一起載入的,不過如果分開載入,也可以很好的分模組開發,這邊只是**,作個說明而已。    

實現tiles技術的嫁接    

在struts框架中採用validator框架的驗證機制    

這裡主要是設定系統所需要的業務邏輯bean,完成符合spring-beans.dtd的定義規則    

分別解釋一下各個配置檔案的主要用途:    

abstractfacadebean(com.iplan.portal.framework.base.basefacade--所有facade的抽象類,主要完成對dao的配置,以便為所有facade提供dao支援)    

abstractservicebean(com.iplan.portal.framework.base.baseservice--所有serviceimp的抽象類,主要完成對dao的配置,以便為所有serviceimp提供dao支援)    

basetransactionproxy(通用的事務**,這樣所有的service、facade都可以繼承這個事務**)    

這裡定義的都是些基礎設施,可以看到都是framework.base下的類    

dataaccesscontext-local.xml--定義本地資料來源資訊    

說明:為了系統運作的簡單化,這裡設定了本地資料來源資訊(以local為標誌),當然如果為了分布式運作,採用jta事務,可以定義相應的設定    

這裡主要定義了資料來源datasource、hibernate的sessionfactory(mysessionfactory)、hibernate的事務管理器(mytransactionmanager)、共通的訪問資料庫介面commondao(com.iplan.portal.framework.base.hibernate.commondao)    

以上兩個都是系統運作的基礎,其間有一些聯絡,大家可以參照一下具體的配置檔案即可    

其它的三個配置檔案都是按照功能模組來劃分的,都是具體業務方面的資訊,這裡不在詳細描述,可以自行參考配置檔案    

3、struts和spring的結合處理(action-servlets-config資料夾下)    

action-servlets-config資料夾下主要有action-servlets-default.xml、action-servlets-admin.xml、action-servlets-order.xml    

這裡是action在spring容器下的配置,舉例如下:    

這裡的name屬性"/loginaction"和相應的struts配置檔案中的path屬性要一一對應起來,這樣action類的生命週期將交由spring容器來管理了    

4、模版技術(tiles-config資料夾下)    

5、驗證技術(validation-config資料夾下)    

這兩項就不在多做闡述了,應該應用的比較多了    

除了web-inf/config下的五大類配置檔案外,對其他一些需要用到的配置資訊作乙個比較簡單的介紹    

hibernate.cfg.xml:    

設定pojo資訊,相關的sessionfactory配置已經移植到了spring的dataaccesscontext-local.xml配置檔案中去了    

hibernate.properties    

設定一些有關hibernate的屬性資訊,比如:driver、url、username、password、dialect、connection   pool等等    

i18n國際化資源資訊    

displaytag.properties    

display標籤的配置資訊    

default-db.script、default-db.properties預設的hsqldb的資料結構、資料    

log4j.properties日誌配置檔案    

最後,還有乙個非常重要的配置資訊:web.xml    

有關於各種資訊的配置,web.xml裡面有比較詳細的說明,這裡就不在多闡述了    

這裡描述一下應用伺服器啟動後,如何載入這些配置資訊已**用系統運作的    

第一步,當然是讀取web.xml中的配置資訊,可以啟動    

log4j資訊    

hsqldb資料庫    

啟動struts的actionservlet,相應的config被載入    

那麼struts和spring的結合處理(action-servlets-config資料夾下)、模版技術(tiles-config資料夾下)、驗證技術(validation-config資料夾下)如何被載入呢?    

struts和spring的結合處理(action-servlets-config資料夾下)通過struts(struts-config資料夾下)下的struts-config-default.xml載入    

模版技術(tiles-config資料夾下)、驗證技術(validation-config資料夾下)分別通過struts(struts-config資料夾下)下的各個對應的功能模組配置檔案載入    

通過以上兩步載入,把五個大的配置資訊都載入到系統中去了    

以上是關係系統配置檔案的一些說明,希望通過這些能對整個系統的架構有乙個比較清晰的了解

WEB INF config下配置檔案

在web inf config下有多種配置檔案,這裡作個介紹,對專案的開發很有意義 模版技術 tiles config資料夾下 驗證技術 validation config資料夾下 到這裡,或許會留意到沒有提及hibernate,有關hibernate的設定,也是通過spring來配置的,在後面的s...

Linux下配置vim 配置ctags

配置ctags 假設你要編譯的源 目錄位置為 worksapce weather 執行下面操作,生成tags標籤檔案 root ericsson workspace weather pwd workspace weather root ericsson workspace weather ls di...

ubuntu下源配置

更新源,更新系統 編輯源 sudo gedit etc apt sources.list 配置乙個源足矣,越多越麻煩。系統似乎不會自動識別速度最快的源,源越多隻會導致update和upgrade的速度減慢。中國科學技術大學更新伺服器 教育網,推薦校園網和網通使用者使用 電信cn99的源 推薦電信使用...