一、核心文件
1.Struts.properties文件
对Struts2常量定义。
#所有匹配*.action的请求都由struts2处理
struts.action.extension=do
#让struts2支持动态方法调用
struts.enable.DynamicMethodInvocation=true
2.Struts.xml是核心文件结构。
格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<package name="packageName" namespace="/test" extends="struts-default">
<action name="actionName" class="com.ittx.struts.action.UserAction" method="methodName">
<result>/sucess.jsp</result>
<result name="ADD">/result.jsp</result>
</action>
</package>
</struts>
二、动态方法调用
动态方法调用指的就是为了解决一个Action对应多个请求的处理,以免Action太多。
动态方法调用有3中方法,分别为:
1、Action的method属性
2、感叹号方式 !
3、通配符方式
下例:
public class UserAction extends ActionSupport {
public String add() {
log.debug("执行add添加用户操作 >>>>>>");
return "ADD";
}
public String update(){
log.debug("执行update用户操作 >>>>>>");
return "UPDATE";
}
<action name="userAdd" class="com.ittx.strutsproject.action.UserAction"
method="add">
<result name="ADD">/add_student.jsp</result>
</action>
<action name="userUpdate" class="com.ittx.strutsproject.action.UserAction"
method="update">
<result name="UPDATE">/update_student.jsp</result>
</action>
访问添加方法执行如下路径:http://localhost:8080/struts2/userAdd.action
访问修改方法执行如下路径http://localhost:8080/struts2/userUpdate.action
三、struts2接收参数的几种形式
1.通过Action属性
2.domainModel
1>private User user; 添加get,set方法
2>页上form表单name属性指定为 对象名.属性名 如: user.name
3.实现ModelDriven接口方式
1>实现ModelDriven接口
2>实例化model类.如 : private User user = new User();