Spring學習筆記一(2005 12 30)

2021-04-02 11:04:40 字數 2662 閱讀 8779

1,定義資源檔案獲得資源檔案的訊息,國際化資訊

***x

將會搜尋***x.properties,***x_zh.properties ,***x_ch.properties等。

2,程式裡使用資源檔案 :ctx.getmessage('key',arg);

頁面上使用資源檔案:

3,使用其他檔案。

resource rs = ctx.getresource("classpath:config.properties");

file file = rs.getfile();

目錄規則:

file:c:/test。txt

/config.properties

classpath:config.properties

三種方式。

6,spring可以和很多框架進行整合。

struts+spring,webwork+spring。

7,spring可以有自己的排程類,dispatherservlet。

使用的配置檔案就是beans的配置,名字可以隨便取。

10,spring自帶的資料驗證功能。

10.1,驗證類作為aciotn的乙個名為「validator」的屬性在配置檔案中配置。

此類繼承org.springframework.validation.validator

需要實現兩個介面,support(傳入乙個類),驗證此類是否是action對應的form類。

validator(object obj,errors err )首先把obj轉為form類物件,如果有錯誤放到errors裡,用法和

struts類似。

10.2,表現層頁面需要的顯示錯誤

全部錯誤:

//遍歷status.errormessages

單個錯誤:

//遍歷status.errormessages

如果已經在action中配置了commandname,那麼就不使用command了,而是使用配置的名字

registerinfo

yyy可以按不同異常對映到不同的頁面。

異常頁面從request.getattribute("exception")取得exception物件。顯示他的message屬性。

12,國際化

看完1後,補充如下:

spring判斷使用者locale的方式有三種,request中取,session中取,cookie中取客戶端的locale。

分別用三個類,配置到配置檔案中。

13,資料持久層(重要)對事務的封裝

spring是依賴容器的引數化事務管理不用寫**。

見p67。

1,在配置檔案中配置完資料來源,

2,之後配置事務管理的bean,資料來源是它的屬性。

3,dao,事務員是它的屬性。

4,事務beandaoproxy,事務策略,事務bean,dao都是它的屬性。

14,資料持久層,對jdbc的封裝

org.springframework.jdbc.core.jdbctemplate.

jdbctemplate jdbctemplate = new jdbctemptlate( datasource );

jdbctemplate.update("***xx");

jdbctemplate.update("***xx",new preparedstatementsetter()

});jdbctemplate.query("select ...",new rollbackhandler()

});.call()可以呼叫儲存過程。

query,update還有很多不同版本的實現。

15, jdbc封裝還要引入事務管理機制,預設是沒有事務的。

兩種方式

1,**控制的,在dao裡transactiontemplate使用它的方法。

2,引數化配置的事務。配置乙個proxydao,不用寫這個類,只需要在配置檔案裡增加他對dao的事物設定。

使得dao**十分簡潔。

測試**:

inputstream is = new fileinputstream("***.xml");

xmlbeanfactory factory = new xmlbeanfactoy( is );

userdao dao = (userdao)factory.getbean("proxydao");

dao.insert();//這樣就行了

16,hibernate in spring

只需修改配置檔案增加乙個bean名字為sessionfactory,資料來源作為他的屬性。

trsactionmanager的屬性:sessionfactory

idao介面:定義資料庫操作方法。

dao的屬性:sessionfactory。繼承hibernatedaosupport,並實現idao介面。

裡面使用gethibernatetemplate模版進行資料庫操作。

proxydao的屬性:transactionmanager,dao.

測試例子:

iuserdao dao=(iuserdao)factory.getbean("proxyuserdao"); 

user user = new user();

user.set***...

dao.insertorupdate(user);

Spring 學習筆記(一)

spring 學習筆記 一 throws illegalstateexception,bean ception catch runtimeexception ex catch error err class contextclass determinecontextclass servletcont...

Spring學習筆記(一)

spring學習筆記 spring實戰第三版第二章 宣告bean 建立spring配置 spring核心框架自帶了10個命名空間配 1 aop 為宣告切面及將 aspectj註解的類 為spring切面提供配置元素 2 beans 支援宣告bean和裝配bean 3 context 為配置應用上下文...

Spring學習筆記(一)

由於公司專案的原因,開始接觸到sprin,從一臉懵逼開始,於是一邊請教同學,一邊買了本spring實戰開始看起來,現在簡單記錄下,加深記憶.在我目前學習過程而言,對spring的認識還在於通過xml配置檔案的依賴注入實現物件之間的松耦合。依賴注入主要有三種形式 構造器注入,setter注入和p注入,...