本篇文章小编给大家分享一下Java web项目中的强制登录功能实现代码,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
为了避免直接进入项目中存在的页面,使用filter过滤器
新建一个类loginFilter:
package com.tjcu.filter; import com.tjcu.entity.User; import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; public class loginFilter implements Filter{ @Override public void init(FilterConfig filterConfig) throws ServletException { } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) servletRequest; HttpSession session = request.getSession(); User user = (User) session.getAttribute("user"); HttpServletResponse response = (HttpServletResponse) servletResponse; if (user!=null) { filterChain.doFilter(request,response); }else { response.sendRedirect(request.getContextPath()+"/login.jsp"); } } @Override public void destroy() { } }
在web文件中通知服务器开发了这个过滤器
web.xml:
loginFilter com.tjcu.filter.loginFilter loginFilter /main/*