标题:深入理解struts的运行机制
日期:2016-10-26 20:02
标签:java
类别:编程
个人剖析,不喜勿喷
<强>扫码关注公众号,不定期更新干活强>
<李>
<李>
struts配置文件
<代码类=癶ljs xml”>李> <李>
在
在
===在
=祝辞/index.jsp>
=在/web - inf/login.jsp>
在
在
在
代码>
熟悉struts的朋友都清楚struts。xml配置文件的重要性,这个配置文件名字是可以更改的,这里简单解释下这个配置文件的作用,首先我们找到行动这个节点这个行动的名字是登录,就是说前台中请求这个登录经过这个配置文件解析就会把这个请求交中给行动的类属性,也就是上面的
<代码类=" hljs css ">
代码>
具体的是交由这个类的登录(方法)这个方法。这个方法会方法一个字符串类型的字符串,如果返回的是成功就将页面重定向到index . jsp如果是登录就重定向到登录。jsp。这个配置文件就是这样的作用。因为是自己写的,所以这里并不会想struts框架那样封装了很多东西,这里只是为了让读者更加深入的理解struts的运行机制。
这个servlet就是struts的核心过滤器,需要先继承过滤器。
```
public class FilterDispatcher implements Filter{
@Override
public void destroy() {
//TODO Auto-generated method stub}
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1,
FilterChain arg2) throws IOException, ServletException {
//TODO Auto-generated method stub}
@Override
public void init(FilterConfig arg0) throws ServletException {
//TODO Auto-generated method stub}
}
webRootPath=getClass().getClassLoader()
.getResource().getPath();
拿到配置文件路径之后开始读取,这里我讲读到的数据封装到一个map里面。在封装在Map中我们仔细观察一下配置文件
这里写图片描述
其实我们放在Map里面就是这四个属性的值,有了这四个值我们就可以完成一次前后台交互的映射了。所以为了方便这里封装成javabean。
org.zxh.util;
java.util.HashMap;
java.util.Map;
87077
*
*/
{
String name;
String clazzName;
String method;
Map resultMap=HashMap<字符串,String> ();
{
}
{
. name=名字;
.clazzName=clazzName;
.method=方法;
.resultMap=resultMap;
}
字符串{
名称;
}
字符串{
clazzName;
}
字符串{
方法;
}
Map<字符串,String>{
resultMap;
}
{
. name=名字;
}
{
.clazzName=clazzName;
}
{
.method=方法;
}
{
.resultMap=resultMap;
}
}
代码>
- <李>
李>
<代码类=" hljs飞镖">包org.zxh.util;
java.io.File;
java.util。
java.util。
org.dom4j.Document;
org.dom4j.DocumentException;
org.dom4j。
org.dom4j.io.SAXReader;
公共{
公共parseConfigFile(文件名、深入理解struts的运行机制