输入输出

一、机制
这里写图片描述
ServletRequest 发生请求,—》StrutsPrepareAndExecuteFilter—》 如果有.action格式的请求则进行查找是否有这个请求。—》进入struts.xml 读取文件——》使用ActionProxy——》使用ActionInvocation进行Interceptor拦截——》Action——》Result—》进行Template(进行JSP等)之后进行Intercetor拦截之后——》ServletResponse
web.xml 加载过滤器和Servlet
二、过滤器
web.xml中

struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter


struts2
/*
// 其说明对请求进行过滤和处理,除了html和jsp,

三、struts.xml机制
这里写图片描述
可以有多个包,但是不可以重名。








这里写图片描述
这里写图片描述

/success.jsp



这里写图片描述

四、 action搜索
http://localhost:8080/struts2/path1/path2/path2/student.action 第一步:判断package是否存在 存在 第二步:判断action是否存在,如果不存在则去默认namespace的package里面寻找action 第三步:如果没有,则报错 不存在 第二步:检查上一级路径的package是否存在(直到默认namespace),重复第一步 第三步:如果没有,则报错 五、动态方法调用 解决一个Action对应多个请求的处理,以免Action太多 1.指定method方法 2.使用感叹号 3.使用通配符