Struts
ExecuteFilter:制片
Struct.xml:剧本
XXXAction:导演,演员
1:导jar包 Structs2-core
配置web.xml文件
两种方式
(1)传统配置方式
(2)界面配置方式
点击项目,右键,选中new Filter
点击选中Use existing Filter class
点击Browser
点击ok
点击next
然后配置name和FilterMapping确定即可:
2:写action类
/*
* struts 控制器的默认控制方法execute(执行)
* */
public class DemoAction {
/*
* 控制器方法,控制器方法返回值时视图的id
* */
public String execute(){
System.out.println("Hello World!");
return "msg";
}
public String test(){
//故意制造异常
String string=null;
string.charAt(0);
return "success";
}
}
配置Struts2.xml
<struts>
<!-- namespace用于定义一级请求路径
http://localhost:8080/struts_day01/demo/hello
name:给此模块定义一个名,随便起
extends:"struts-dufault"
-->
<package name="demo" extends="struts-default" namespace="/demo">
<!-- action相对于以前的Spring中的bean
在请求/demo/hello 时候会使用Struts就会利用反射创建DemoAction对象
并执行execute()方法
-->
<action name="hello" class="cn.tedu.action.DemoAction" method="test">
<!-- result用于处理execute方法返回值与JSP视图的对应关系
name:result的返回值
即需要转发到哪个页面
-->
<result name="msg">/WEB-INF/msg.jsp</result>
</action>
</package>
<action>标签中还有一个method属性,用于指定action类中
除execute方法外的方法
传参和接收参数
(1)在Action类中实现bean属性
(2)配置Struts.xml文件
<!-- 测试从浏览器接收参数 -->
<action name="param" class="cn.tedu.action.ParamAction">
<result name="success">/WEB-INF/msg.jsp</result>
</action>
传递参数:http://localhost:8080/struts_day01/demo/param?name=tom
接收参数:JSP页面 使用el表达式:${name}接收参数