前台页面与后台servlet实现登录的三种实现方式

第一种:action获取数据在servlet实现转发处理实现登录

前台页面

<form action="Hasdf" method="get">
账号:<input type="text" id="userId" name="userId"><br>
密码:<input type="text" id="userPwd" name="userPwd"><br>
<input type="submit" value="提交">
</form>

后台servlet:

String userid = request.getParameter("userId");
String userpwd = request.getParameter("userPwd");

if ("".equals(userid) || "".equals(userpwd)) {
response.sendRedirect("login.jsp");
}else if(null == userid && null == userpwd ) {
response.sendRedirect("login.jsp");
}else if("admin".equals(userid) && "123".equals(userpwd) ) {
response.sendRedirect("sucess.jsp");
}else {
response.sendRedirect("login.jsp");
}

第二种:获取参数在Jspye页面进行处理实现登录

后台:

response.setContentType("text/html;charset=utf-8");//设置http输出格式
        response.setCharacterEncoding("utf-8");//设置字符编码格式
        HttpSession session = request.getSession();
        String rec="";
String userName= request.getParameter("userName");
String userId= request.getParameter("userId");
if("".equals(userName)|"".equals(userId)|userName==null|userId==null) {
session.setAttribute("msg", "输入错误");
response.sendRedirect("NewFile1.jsp");
}else {
rec="欢迎"+userName+"回来!";
// rec=new String(rec.getBytes("iso8859-1"),"utf-8");
response.getWriter().write(rec);
}
}

前台

<body>
<%
String str=(String)session.getAttribute("msg");
if(str != null ){
out.write("<script type='text/javascript' >alert('"+str+"') </script>");
}
%>
<form action="Tser" method="post">
<input type="text" name="userName" id="userName" value="" />
<input type="password" name="userId" id="userId" value="" />
<input type="submit" value="提交"/>
</form>
</body>


第三种:使用ajax进行处理实现登录

前台:

<title>Insert title here</title>
<script type="text/javascript">
function getUser(){ 

variable=new XMLHttpRequest();
var xmlhttp;
          if (window.XMLHttpRequest){
       
          xmlhttp=new XMLHttpRequest();
       } else{
           xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
       }  
       xmlhttp.onreadystatechange=function(){
         if (xmlhttp.status==200 ){      
      if(xmlhttp.readyState==4){      
      var str =xmlhttp.responseText;
      document.getElementById("dimm").innerHTML=xmlhttp.responseText;
      if(str=="OK"){
      location.href="Login.jsp";
      } 
      }
       }       
     }   
     var vv="userName="+document.getElementById('userName').value+"&userPwd="+document.getElementById('userPwd').value
         xmlhttp.open("POST","login?"+vv);
         xmlhttp.send(null);
}
</script>
</head>
<body>
<form action="login" method="post">
userName<input type="text" name="userName" id="userName" /> <br>
userPwd<input type="password" name="userPwd" id="userPwd" /> <br>
<!--  <input type="submit" value="sumbmit"/> -->
<input type="button" id="errm" value="按钮" οnclick="getUser()" />
</form>
<div id="dimm"></div>
</body>
</html>

后台:

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
resp.setContentType("text/html; charset=UTF-8");
resp.setCharacterEncoding("UTF-8");
String userName =req.getParameter("userName");
String userPwd =req.getParameter("userPwd");
//   HttpSession session = req.getSession();
if(userName==null||userPwd==null){
System.out.println("111111111");
// session.setAttribute("errMsg", "您输入的姓名和密码有误");
// resp.sendRedirect("MyFirst.jsp");
resp.getWriter().write("账号密码不能为空!!!!");
}else if("".equals(userName)||"".equals(userPwd)) {
System.out.println("22222222");
// session.setAttribute("errMsg", "您输入的姓名和密码有误");
// resp.sendRedirect("MyFirst.jsp");
resp.getWriter().write("账号密码不能为空!!!!");
}else if("aaa".equals(userName)&&"aaa".equals(userPwd)) {
resp.getWriter().write("OK");
}else {
System.out.println("33333333");
// session.setAttribute("errMsg", "您输入的姓名和密码有误");
// resp.sendRedirect("MyFirst.jsp");
resp.getWriter().write("账号密码输入错误!!!!!");
}

}

©️2020 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值