Servlet登录与不登录拆分
来源:互联网 发布:电陶炉 知乎 编辑:程序博客网 时间:2024/05/29 19:45
web.xml: <filter> <filter-name>LoginFilter</filter-name> <filter-class>com.lxj.filter.LoginFilter</filter-class> <init-param> <param-name>noLoginPaths</param-name> <param-value>login.jsp;fail.jsp;LoginServlet</param-value> </init-param> </filter> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>servlet:package com.lxj.servlet;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import java.io.IOException;import java.io.PrintWriter;@WebServlet("/LoginServlet")public class LoginServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = request.getParameter("username").trim(); String password = request.getParameter("password").trim(); if("admin".equals(username) && "admin".equals(password)){ HttpSession session = request.getSession(); session.setAttribute("username",username); request.getRequestDispatcher("success.jsp").forward(request,response); }else{ response.sendRedirect(request.getContextPath() + "/fail.jsp"); } }}filter: package com.lxj.filter;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{ private FilterConfig config; @Override public void init(FilterConfig filterConfig) throws ServletException { this.config = filterConfig; } @Override public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest)servletRequest; String str = this.config.getInitParameter("noLoginPaths"); if(str != null){ String curUri = request.getRequestURI(); String[] strArr = str.split(";"); for(String s : strArr){ System.out.println(s); if(s==null || s==""){ continue; } if(curUri.indexOf(s) != -1){ filterChain.doFilter(servletRequest,servletResponse); return; } } } HttpSession session = request.getSession(); if(session.getAttribute("username") != null){ filterChain.doFilter(servletRequest,servletResponse); }else{ HttpServletResponse response = (HttpServletResponse)servletResponse; response.sendRedirect(request.getContextPath()+"/login.jsp"); } } @Override public void destroy() { }}login.jsp: <form action="<%=request.getContextPath()%>/LoginServlet" method="post"> <input type="text" name="username" value=""/><br /> <input type="password" name="password" value="" /><br /> <input type="checkbox" name="flag" /> <button name="submit">登录</button> </form>success.jsp: 登录成功,欢迎您<%=session.getAttribute("username")%>fail.jsp: 登录失败,请检查用户名或者密码
阅读全文
0 0
- Servlet登录与不登录拆分
- Servlet 实现登录与注册
- Android登录与注册json+servlet+oracle
- Servlet 登录 继续!!!
- Jsp+Servlet+JDBC 登录
- 登录验证servlet实现
- Servlet+Tomcat 界面登录
- servlet做登录验证
- Servlet 登录DEMO
- Servlet cookie自动登录
- servlet实现登录过滤
- 【servlet】登录验证
- servlet实现用户登录
- servlet之登录页面
- Servlet的表单登录
- Servlet-登录Demo
- Servlet实现登录
- 用户登录的servlet
- HTML5中废弃的标签属性
- Idea 2017 用Maven构建的项目找不到相关依赖包(mybatis.generator红色波浪线)的问题解决
- JavaScript学习(1)
- 蓝桥杯 基础练习 字母图形
- java开发环境搭建
- Servlet登录与不登录拆分
- 关于“c语言从键盘输入字符串到指针数组”的问题
- [算法] 使用“复杂”的数据结构降低时间复杂度
- BZOJ1055:玩具取名(区间dp)
- Python 开发者的 6 个必备库
- centos 7 安装系统内核
- (二十九)hibernate 多对多
- maya(学习笔记)之Arnold材质
- Python 零碎知识