📄 authenticationfilter.java
字号:
package filter;
// Download by http://www.codefans.net
import java.io.*;
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.xml.parsers.*;import org.xml.sax.*;import org.w3c.dom.*;//import org.apache.crimson.tree.XmlDocument;
public class authenticationFilter implements Filter{
private FilterConfig filterConfig;
//
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig=filterConfig;
//get appConfig
ServletContext context=filterConfig.getServletContext();
InputStream appconfig=context.getResourceAsStream((String)context.getInitParameter("applicationHome"));
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db=null;
try { db = dbf.newDocumentBuilder();
}
catch(ParserConfigurationException pce){
System.out.println("parserConfigurationException"+pce.getMessage());
}
Document doc =null;
try
{ doc = db.parse(appconfig);
}
catch(IOException ee){
System.out.println("ioexcepion"+ee.getMessage());
}
catch(SAXException ew){
System.out.println("SAXException"+ew.getMessage());
}
NodeList direclist=doc.getElementsByTagName("applicationconfig");
Node configid;
for (int ctr=0;ctr<direclist.getLength();ctr++){
configid=direclist.item(ctr);
NamedNodeMap attribs=configid.getAttributes();
Node attrib=attribs.getNamedItem("name");
String direcname=attrib.getNodeValue();
if (ctr==0) {context.setAttribute("appHome",direcname);}
if (ctr==1) {context.setAttribute("dbdriver",direcname);}
if (ctr==2) {context.setAttribute("serverURL",direcname);}
if (ctr==3) {context.setAttribute("username",direcname);}
if (ctr==4) {context.setAttribute("password",direcname);}
}
//
}
//
public void doFilter(ServletRequest req,ServletResponse res,FilterChain chain) throws
IOException,ServletException {
HttpServletRequest request=(HttpServletRequest) req;
HttpServletResponse response=(HttpServletResponse) res;
if (request.getSession().getAttribute("loginuser")==null)
{
RequestDispatcher dispatcher=filterConfig.getServletContext().getRequestDispatcher("/login.jsp");
dispatcher.forward(request,response);
}
else {
chain.doFilter(request,response);
}
}
//
public void destroy(){}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -