html代码
分别是一个登录界面和登录成功的界面
first web
你好 欢迎来到我的网站
web.xml的配置
test exercise2.test test /test test_filter exercise2.test_filter test_filter /web.html
java代码,只要实现登录时的响应和filter
package exercise2;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class test extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("经过了set程序");
String name=req.getParameter("t1");
System.out.println("账号:"+name);
if("admin".equals(name)) {
System.out.println("密码正确");
req.getSession().setAttribute("user", name);
req.getRequestDispatcher("/web.html").forward(req, resp);}
else {
resp.getWriter().write("login fail");
}
}
}
package exercise2;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
public class test_filter implements Filter{
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest httpServletRequest=(HttpServletRequest)arg0;
Object use=httpServletRequest.getSession().getAttribute("user");
if(use==null) {
System.out.println("调用过滤器:登录失败");
arg0.getRequestDispatcher("/index.html").forward(arg0, arg1);
}else {
System.out.println("调用过滤器:成功登录");
arg2.doFilter(arg0, arg1);
}
}
}
主要还是说明一下web.xml的filter过滤器的配置,
test_filter /web.html
这里第三行代码实际代表的过滤的网站,过滤规则为
http://id/工程路径/你过滤的位置;
我这里代表的是 http://localhost:8080/exercise2/web.html;
还有几个比较方便的过滤方法
/*表示所有
*.html对所有html过滤




