概述
packageaccp.com.xh.utils;importjava.io.IOException;importjava.io.InputStream;importjavax.servlet.Filter;importjavax.servlet.FilterChain;importjavax.servlet.FilterConfig;importjavax.servlet.ServletException;importjavax.servlet.ServletRequest;importjavax.servlet.ServletResponse;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.xml.parsers.DocumentBuilderFactory;importorg.w3c.dom.Document;importorg.w3c.dom.Element;importorg.w3c.dom.NodeList;/*** 创建过滤器
* 前端控制器 接收所有参数;设置编码的格式;做登陆的控制拦截;分发请求
*@authorxiaohua
**/
public class ActionFilter implementsFilter{/*** tomcat启动时执行,只会执行一次;
* 解析配置的规则文件 :actions.xml*/@Overridepublic void init(FilterConfig config) throwsServletException {try{//得到action.xml文件
InputStream is =Thread.currentThread().getContextClassLoader()
.getResourceAsStream("actions.xml");//解析xml文件
Document document =DocumentBuilderFactory.newInstance()
.newDocumentBuilder().parse(is);//获取action标签元素:
NodeList nodeList = document.getElementsByTagName("action");for(int i = 0 ;i
Element actionElement =(Element)nodeList.item(i);
String actionName= actionElement.getAttribute("name");
String actionClass= actionElement.getAttribute("class");
System.out.println("actionName属性:"+actionName);
System.out.println("actionClass属性:"+actionClass);//获取result 标签元素//product
NodeList resultList = actionElement.getElementsByTagName("result");for(int j=0;j
Element resultEl=(Element) resultList.item(j);
String resultName= resultEl.getAttribute("name");//得到action.xml中的result name属性
String resultType = resultEl.getAttribute("type");
System.out.println("name属性:"+resultName);
System.out.println("type属性:"+resultType);
}
}
}catch(Exception e) {throw new RuntimeException("解析action.xml文件出错:"+e.getMessage());
}
}/*** 每次请求都会执行的过滤器 ;
* 根据请求的URL 找出对应处理的XXXaction,判断哪个方法处理*/@Overridepublic voiddoFilter(ServletRequest request, ServletResponse response,
FilterChain chain)throwsIOException, ServletException {
HttpServletRequest req=(HttpServletRequest)request;
HttpServletResponse resp=(HttpServletResponse)response;//resp.sendRedirect("");
}/*** 正常停止tomcat的时候执行,只会执行一次;
* 销毁资源的操作,*/@Overridepublic voiddestroy() {
}
}
最后
以上就是单薄八宝粥为你收集整理的过滤器的java代码的xml_Java 创建过滤器 解析xml文件的全部内容,希望文章能够帮你解决过滤器的java代码的xml_Java 创建过滤器 解析xml文件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复