判断用户是否登录,如果登录了放行,否则跳转到登陆页面
2012-03-21 15:21
851 查看
package elkw.action; import javax.servlet.Filter; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.FilterChain; import java.io.IOException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpServletResponse; import elkw.po.system.User; public class RightFilter implements Filter { public void init(FilterConfig filterConfig) throws ServletException { } public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; HttpServletResponse res = (HttpServletResponse) response; HttpSession session = req.getSession(true); //从session里取的用户名信息 User username = (User) session.getAttribute("user"); String reuris = req.getRequestURI(); // 获取访问路径 String reuri = reuris.substring(0, 17); //截取0-17的字符 String loginAction = "/backserver/login";//定义登陆的地址 //判断如果没有取到用户信息,就跳转到登陆页面 String ipad = "/backserver/jsond"; if (username == null || "".equals(username)) { //ipad请求数据和登陆页面不过滤 if (reuri.equals(loginAction) || reuri.equals(ipad)) { chain.doFilter(request,response); return; } //跳转到登陆页面 res.sendRedirect("http://"+req.getHeader("Host")+"/backserver"); } else { //已经登陆,继续此次请求 chain.doFilter(request,response); } } public void destroy() { } }
下面配置这个过滤器
然后在web.xml里配置那些JSP文件需要登陆权限验证:
<!-- 判断用户是否登录 ,过滤action的请求(你也可以写 (*.jsp) ,(*.html),(/*)全局的 ,)。。。。 --> <filter> <filter-name>right</filter-name> <filter-class>你的类名</filter-class> </filter> <filter-mapping> <filter-name>right</filter-name> <url-pattern>*.action</url-pattern><!-- 拦截--> </filter-mapping>
大家如果有什么疑问一起探讨探讨
相关文章推荐
- 判断Session是否登录,否则跳转登录页面
- 访问页面时,判断用户是否登录,若没有登录,将跳转到登录页面(一)
- 判断用户是否已经登录(跳转到不同页面或者执行不同动作)
- 判断用户是否已登录,未登录用户禁止访问任何页面或action,自动跳转到登录页面
- web 开发,个人中心每个请求,判断用户是否登录,若没有登录,则跳转到登录页面,登录成功后返回之前页面
- ionic1 跳转至某个页面之前判断用户是否登录
- 判断用户是否登录,用户在没有登录访问页面时,自动跳转到登录页面(二)
- PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
- axios 拦截 , 页面跳转, token 验证(经常用于判断用户是否登录)
- MVC判断用户有没有登陆跳转登录页面AuthorizeAttribute
- JavaWeb拦截器,查看用户是否登录过,未登录禁止访问页面并且跳转到登录页面
- 完成系统登录程序,从命令行输入用户名和密码,如果没有输入用户名和密码,则提示输入用户名和密码;如果输入了用户名但是没有输入密码,则提示用户输入密码,然后判断用户名是否是mldn,密码是否是hello,
- 牛腩购物26:购物车页面的整合,判断是否是验证了登陆用户
- 点击页面判断是否安装app并打开,否则跳转app store的方法
- 完成系统登录程序,从命令行输入用户名和密码,如果没有输入用户名和密码,则提示输入用户名和密码;如果输入了用户名但是没有输入密码,则提示用户输入密码,然后判断用户名是否是mldn,密码是否是hello,
- 点击页面判断是否安装app并打开,否则跳转app store的方法
- 点击页面判断是否安装app并打开,否则跳转app store的方法
- iOS 开发之 点击tabbarItem添加是否跳转登录页面判断
- 完成系统登录程序,从命令行输入用户名和密码,如果没有输入用户名和密码,则提示输入用户名和密码;如果输入了用户名但是没有输入密码,则提示用户输入密码,然后判断用户名是否是mldn,密码是否是hello,
- 点击页面判断是否安装app并打开,否则跳转app store的方法