"struts.devmode
" value="
true
">
"struts.i18n.encoding
" value="
utf-8
">
"default
"namespace="
/" extends="
struts-default
">
"hello
"class="
action.helloaction
">
/hello.jsp
taglib標籤庫
<%@taglib uri="/struts-tags" prefix="s" %> 引用表示引用action類屬性的值
1、定義實體類並,為實體新增屬性和setter及getter方法
2、為action類新增實體屬性和setter及getter方法。例如 private user user;
3、修改表單引數name為實體物件名.屬性名 。例如:name=「user.username」
4、取值通過的方式。
1、定義實體類並,為實體新增屬性和setter及getter方法
2、建立action類,實現modeldriven介面,重寫getmodel()方法,該方法返回值為實體屬性。例如 public user getmodel() return user
3、為action類新增j**abase型別屬性,並需要例項化,不需要setter及getter方法。例如 private user user=new user();
4、form表單項的name屬性,以及頁面的取值時通過方式,
相同點:與j**abase方式定義action屬性的方式類似,與屬性方式在jsp頁面中的方式相同。
不同點:modedriven方式乙個action對應乙個model用於接受引數。而j**abase方式乙個action可以對應多個model
modedriven方法與屬性方式同時存在action時,對於相同的屬性,modedriven方式優先被賦值。
訪問action時,預設呼叫的execute方法,可以在action中定義多個業務方法,方法簽名要和public string execute()相同,例如 public string add()
可以使用method屬性配置指定呼叫的方法,例如乙個action可以配置多個來對應action中的多個方法,使用不同的name屬性值和method屬性值配置
例如
"struts.devmode
" value="
true
">
"struts.i18n.encoding
" value="
utf-8
">
"default
"namespace="
/" extends="
struts-default
">
"hello
"class="
action.helloaction
" method="
execute
">
/hello.jsp
"hello2
"class="
action.helloaction
" method="
add">
/success.jsp
"hello3
"class="
action.helloaction
" method="
updata
">
/success2.jsp
使struts.xml結構清晰直觀,減少各個模組內容的互相干擾,各司其職。
1、按照模組在不同的xml中配置〈action〉
例如 struts_user.xml:
2、在struts.xml中使用〈include〉標籤包含多個xml檔案
例如:struts.xml:
用*號匹配到內容替換對應的大括號位置上的內容,一般使用1個*號
"*_*"
class="
action.action
" method="
">
/_.jsp
/user_add.jsp
當有多action 匹配時的順序 :1、優先使用完全匹配,其次才使用萬用字元。
當有多個萬用字元匹配時:1、優先寫在前面的萬用字元
----表示找不到action時,訪問名為user的action
/index.jsp
struts2 action 配置方法
struts2 action幾乎完全吸收了xwork 的精華,近日學習struts 2,總結一下action的配製方法。首先看一下com.opensymphony.xwork2.action的介面宣告,action提供execute 方法,子類必須實現execute 方法。public inte c...
struts2 action中result引數詳解
chain 用來處理action鏈 com.opensymphony.xwork2.actionchainresult dispatcher 用來轉向頁面,通常處理jsp org.apache.struts2.dispatcher.servletdispatcherresult freemaker ...
Struts2 Action獲取Scope物件
方式 一 與servlet解耦合的非ioc方式 獲取的scope物件與容器無關,通過actioncontext獲取。loginaction 如下 package com.asm public class loginaction extends actionsupport 省略username的get...