• jsp+servlet实现的验证登陆


    可以将业务逻辑处理和视图相分离,使用jsp界面表示视图,使用servlet处理业务逻辑

    login.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <%
    String msg=(String)request.getAttribute("msg");
    if(msg!=null){
    out.print(msg);
    }
    %>
    <form action="dologin" method="post">
    username:<input type="text" name="username" /><br>
    password:<input type="password" name="password" /><br>
    <input type="submit" value="submit" />
    </form>
    </body>
    </html>
    

    success.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    登陆成功 
    <%
    String username=request.getParameter("username");
    out.print(username+"欢迎你");
     %>
    </body>
    </html>
    

    fail.jsp

    <%@ page language="java" contentType="text/html; charset=utf-8"
        pageEncoding="utf-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    登陆成功 
    <%
    String username=request.getParameter("username");
    out.print(username+"欢迎你");
     %>
    </body>
    </html>
    

    业务逻辑处理

    com.zk.myservlet.dologin.java

    public class dologin extends HttpServlet {
    	public void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    	//获取表单数据
    	String username=request.getParameter("username");
    	String password=request.getParameter("password");
    	//处理业务逻辑
    	if("Tom".equals(username)&&"123".equals(password))
    	{
    	//分发转向
    	request.getSession().setAttribute("username", username);
    	request.getRequestDispatcher("/success.jsp").forward(request, response);
    	//response.sendRedirect(request.getContextPath()+"/success.jsp");//丢失 username参数值 ,一次请求
    	}
    	else
    	{
    	//分发转向
    	//request.getRequestDispatcher("/fail.jsp").forward(request,response);
    	//response.sendRedirect(request.getContextPath()+"/fail.jsp");
              request.setAttribute("msg", "用户名密码不正确");
    	  request.getRequestDispatcher("/login.jsp").forward(request,response);
    	}
    	}
    	public void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		doGet(request,response);
    	}
    
    }
    

      

  • 相关阅读:
    emacs 探索之六:latex中文支持
    One网络模拟器探索之六:Report类的扩展
    emacs 探索之五:latex配置
    emacs 探索之三:基本操作
    DataSet数据传送性能比较
    SQL 2008 附加数据库报5120的错误的解决办法
    软件工程师不可不知的10个概念
    在日期上加上相应天数,并在GridView上显示
    SQL 跨表更新
    SQLSERVER 处理两个日期相减
  • 原文地址:https://www.cnblogs.com/longlyseul/p/9948400.html
Copyright © 2020-2023  润新知