Struts2學(xué)習(xí)筆記(3)-DMI動(dòng)態(tài)調(diào)用方式
什么是DMI?DMI即所謂的動(dòng)態(tài)方法調(diào)用。
Action在執(zhí)行的時(shí)候并不一定要執(zhí)行execute方法,可以在配置文件中配置Action的時(shí)候用method=來指定執(zhí)行哪個(gè)方法,也可以在url地址中動(dòng)態(tài)指定(動(dòng)態(tài)方法調(diào)用DMI)。
第一種方式,在struts.xml中對(duì)Action添加method:
<constant name="struts.devMode" value="true" />
<span style="color:#ff6666;"><package name="user" extends="struts-default" namespace="/user">
<action name="userAdd" class="com.bjsxt.struts2.user.action.UserAction" method="add">
<result>/user_add_success.jsp</result>
</action>
</span>
<action name="user" class="com.bjsxt.struts2.user.action.UserAction">
<result>/user_add_success.jsp</result>
</action>
</package>
</struts>
上述紅色字體部分就是主要的方式
第二種方式,即DMI,很簡(jiǎn)單--修改url即可
<a href="<%=context %>/user/user!add">添加用戶</a>
就是在地址后添加一個(gè)“!”然后緊接著方法名即可,此種方式類似于通配符。
無論何種方式,都需要添加一個(gè)method(Java文件中)
import com.opensymphony.xwork2.ActionSupport;
public class UserAction extends ActionSupport {
public String add() {
return SUCCESS;
}
}
它要返回一個(gè)字符串,在實(shí)際開發(fā)中一般都使用第二種方式,因?yàn)樗鼫p少了Action的數(shù)量。
以上就是Struts2的DMI動(dòng)態(tài)調(diào)用方式的全部?jī)?nèi)容,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
maven deploy時(shí)報(bào)錯(cuò)的解決方法
這篇文章主要介紹了maven deploy時(shí)報(bào)錯(cuò)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09idea熱部署插件jrebel正式版及破解版安裝詳細(xì)圖文教程
這篇文章主要介紹了idea熱部署插件jrebel正式版及破解版安裝詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12SpringFramework應(yīng)用接入Apollo配置中心過程解析
這篇文章主要介紹了SpringFramework應(yīng)用接入Apollo配置中心過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03自己動(dòng)手寫的mybatis分頁(yè)插件(極其簡(jiǎn)單好用)
最近做了個(gè)項(xiàng)目,需要用到mybatis分頁(yè)功能,網(wǎng)上找了很多插件,都不太合適,于是就自己動(dòng)手寫了個(gè)mybatis分頁(yè)插件功能,非常不錯(cuò),代碼簡(jiǎn)單易懂,需要的朋友參考下吧2016-11-11