struts1的一些總結

2021-09-01 05:20:17 字數 3378 閱讀 6527

struts1 7大元件 

actionservlet 控制器 

action    包含事務邏輯 

actionform 顯示模組資料   資料模型 

actionforward 用來指示操作轉移的物件 

actionerror 用來儲存和**錯誤 

struts標記庫 可以減輕開發顯示層次的工作 

mvc 

model------actionform 

v---------jsp 

contrl----actionservlet  核心控制器 

業務控制器  action 

1 helloworld(不帶form) 

strutt1.2與1.3在lib上的差別 由於1.2中沒有標籤庫包 ,所以需要相關的tld檔案 

(struts-bean.tld,struts-html.tld,struts-logic.tld,struts-nested.tld,struts-tiles.tld) 

(1)導包 拷貝需要相關的tld檔案(1.2) 

(2)寫action類 繼承action 重寫execute方法 

public class helloworldaction extends action  

} (3)在web-inf新建struts-config.xml檔案 

<?xml version="1.0" encoding="utf-8" ?> 

"-//apache software foundation//dtd struts configuration 1.2//en" 

""> 

(4)在web.xml進行struts配置 

action 

org.apache.struts.action.actionservlet 

config 

/web-inf/struts-config.xml  2 

action 

*.do 

(5)執行  http://localhost:埠號/應用名/配置的path 

演示不同路徑訪問 以及傳值回jsp頁面 

2 helloworld(在1的基礎上 帶form) 

(1) 編寫actionform  繼承actionform 裡面提供相關屬性的set與get方法 

(2) 在struts-config.xml配置 form-bean 

對乙個actionform裡的資料進行驗證配置 

這裡配置乙個屬性的驗證內容 

定義乙個變數的標籤體,可以在裡面具體設定變數的名稱以及數值 

對應key裡定義的變數名稱 

值 這裡定義了key後,會使用自己的定義的key,否則使用驗證規則預設定義的key 

在驗證規則中大部分可以使用已經預定義好的規則,它們在validator-rules.xml裡,當然我們自己也可以定義規則。 

其實,這個檔名可以是任意的,可以起成別的名字,比如:validators.xml,不過,也要相應修改struts-config.xml檔案中的加入validator框架plugin中的value屬性。這個value屬性用來指定validator-rules檔案和具體的驗證檔案。 

1)根元素: 

validators.xml檔案的「根元素(root)」是form-validation, 

意味著整個檔案的內容包含在「

傳引數到minlength 

property="password" 

depends="required,minlength"> 

minlength 

6 正規表示式例子 

property="password" 

depends="required,mask"> 

mask 

^[0-9a-za-z]*$   

日期驗證例子 

property="date"     

depends="required,date"> 

datepattern 

yyyy-mm-dd 

基本驗證規則: 

名稱                              描述 

byte,short,integer,     檢驗值是否能被轉換成對應的基本資料型別 

long,float,double        

creditcard                  檢驗輸入域是否是乙個合法的信用卡號碼 

date(有點失望)                             檢驗輸入域是否是乙個合法日期        form中對應的date型別為字串型別 只驗證字串型別 有點失望 

email                           檢驗輸入是否是乙個合法email位址 

mask                           檢驗輸入域是否能成功匹配乙個正規表示式 

maxlength                 檢驗值的長度是否小於等於給定的最大長度 

minlength                  檢驗值的長度是否大於等於給定的最小長度 

range                           檢驗值的範圍是否在最大值和最小值之間 

required                      檢驗輸入域是否為不為空,或不包含空格值的長度是否大於零 

12 tiles框架 

tiles框架提供了一種模板機制,它可以將網頁內容和布局分離,並允許先建立模板,然後在頁面中再插入具體的內容。 

tiles框架是struts的乙個外掛程式。我們可以使用tiles框架來進行頁面布局設計。 

使用tiles步驟 

在所使用tiles標籤頁面引入 <%@taglib prefix="tiles" uri="/web-inf/struts-tiles.tld"%> 

1  先定義乙個模板  做好乙個模板頁面  例如   以下兩種方式均可 

1.1 使用標籤定義模板 

1.2 使用標籤定義模板 

2 使用模板頁面  使用與標籤    

在struts1使用tiles 

1 在struts應用程式中使用tiles,我們需要新增如下定義到struts-config.xml檔案。 

2  tiles-defs.xml  以下示例 定義baselayout  friends和office都繼承了它 

<?xml version="1.0" encoding="utf-8" ?> 

"-//apache software foundation//dtd tiles configuration 1.1//en" 

"">   

3   修改struts-config.xml   注意path的值 為 tiles-defs.xml檔案中的定義definition name 

struts1學習筆記一

使用者註冊案例 1.寫乙個register.jsp頁面 2 匯入struts開發包,在web.xml中配置struts寫的 actionservlet,讓它處理所有的.do請求。actionservlet org.apache.struts.action.actionservlet config w...

struts1的工作原理

actionservlet從struts config.xml檔案中讀取配置資訊,把它們存放到各種配置物件中。當actionservlet接收到乙個客戶請求時,將執行如下流程.1 在web應用程式啟動或者第乙個servlet請求到達的時候,會載入並初始化actionservlet,具體什麼時候初始化...

struts1的執行流程

我們剛剛談論到表單自動收集,那表單自動收集之後,系統就會呼叫processactioncreate這個方法去建立請求對應的action了。這時候注意主角登場了。在建立action的時候,會有乙個鎖的機制,即單例 同步 那就是為什麼struts1效率低的原因了,畢竟是在一到控制層建立action就加了...