818~819 登录验证实现,过滤敏感词汇分析
登录验证的过滤器
假如未登录访问页面提示你返回到登录页面登录后在访问该页面
实现:
/**
* 登录验证的过滤器
*/
@WebFilter("/*")
public class LoginFilter implements Filter {
public void init(FilterConfig config) throws ServletException {
}
public void destroy() {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException {
//0.强制转换
HttpServletRequest request1 = (HttpServletRequest) request;
//1.获取资源请求路径
String uri = request1.getRequestURI();
//2.是否跑含相关资源路径
if(uri.contains("/login.jsp")|| uri.contains("/loginServlet") || uri.contains("/css/") || uri.contains("/js/") || uri.contains("/fonts/") || uri.contains("/checkCodeServlet")){
//包含,证明用户就是想登录。放行
}else {
//不包含,需要验证用户登录是否成功
//3.从获取session中获取user
Object user = request1.getSession().getAttribute("user");
if (user !=null){
//登录了。放行
chain.doFilter(request,response);
}else {
//没有登录。跳转登录页面
request1.setAttribute("login_msg","未登录");
request1.getRequestDispatcher("login.jsp").forward(request1,response);
}
}
//chain.doFilter(request, response);
}
}
过滤敏感词汇分析
需求:
1.对day17_case案例录入的数据进行敏感词汇过滤
2.敏感词汇参考《敏感词汇.txt》
3.如果是敏感词汇,替换为 ***
分析:
1.对request对象进行增强。增强获取参数相关方法
2.放行。传递代理对象


浙公网安备 33010602011771号