我的第一个jsp程序-实现注册登录留言功能

我的第一个jsp程序-实现注册登录留言功能

1,注册功能,包括两个页面

zhuce.jsp注册页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  2  pageEncoding="UTF-8"%>  3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  4 <html>  5 <head>  6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  7 <title>注册页面</title>  8  9 <script type="text/javascript"> 10 //js方法,验证用户名,昵称,密码是否为空,两次密码输入是否一致 11 function yanzh() 12 { 13 if(form1.user.value == "") 14  { 15  alert("用户名不能为空"); 16 return false 17  } 18 else if(form1.passw.value == "") 19  { 20  alert("密码不能为空"); 21 return false 22  } 23 else if(form1.nich.value == "") 24  { 25  alert("昵称不能为空"); 26 return false 27  } 28 else if(form1.passw.value != form1.passw1.value) 29  { 30  alert("两次输入密码不一致"); 31 return false 32  } 33 else 34  { 35 return true 36  } 37 38 } 39 40 </script> 41 42 </head> 43 <body> 44 <!-- 注册表单 --> 45 <form action="zhcchl.jsp" name="form1" id="form1" onsubmit="return yanzh()" method="post"> 46 47 请注册 48 <br> 49 用户名:<input type="text" name="user" id="user"> 50 <br> 51 昵称:<input type="text" name="nich" id="nich"> 52 <br> 53 密码:<input type="password" name="passw" id="passw"> 54 <br> 55 确认密码:<input type="password" name="passw1" id="passw1"> 56 <br> 57 <input type="submit" value="注册"> 58 59 </form> 60 61 </body> 62 </html>

zhcchl.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=UTF-8"> <title>注册处理页面</title> </head> <body> <% //接收用户名,密码,昵称 String user = request.getParameter("user"); String passw = request.getParameter("passw"); String nich = request.getParameter("nich"); //取用户名对应的application对象 Object obj = application.getAttribute(user); //如果没有找到用户名,跳转到错误页面 if(user == null || user.trim().length() == 0) { response.sendRedirect("cuowu.jsp?mes=1"); } //如果没有找到密码,跳转到错误页面 else if(passw == null || passw.trim().length() == 0) { response.sendRedirect("cuowu.jsp?mes=2"); } //如果没有找到昵称,跳转到错误页面 else if(nich == null || nich.trim().length() == 0) { response.sendRedirect("cuowu.jsp?mes=3"); } //如果用户名已存在,跳转至错误页面 else if(obj != null) { response.sendRedirect("cuowu.jsp?mes=4"); } else { //将注册信息写入application对象 application.setAttribute(user, user + "#" + nich + "#" + passw); //跳转至错误页面提示注册成功 response.sendRedirect("cuowu.jsp?mes=5"); } %> </body> </html>

2,登录功能,包括两个页面

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=UTF-8"> <title>登录页</title> <script type="text/javascript"> //js方法验证用户名密码是否为空 function yanzh() { if(form1.user.value == "") { alert("用户名不能为空"); return false; } else if(form1.password.value == "") { alert("密码不能为空"); return false; } else { return true; } } </script> </head> <body> <!-- 登录表单 --> <form action="logac.jsp" name="form1" id="from1" onsubmit="return yanzh()" method="post"> 请登录 <br> 用户名:<input type="text" name="user" id="user"> <br> 密码:<input type="password" name="password" id="password"> <br> <input type="submit" value="登录"> <a href="zhuce.jsp">注册</a> </form> </body> </html>

logac.jsp登录处理页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  2  pageEncoding="UTF-8"%>  3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  4 <html>  5 <head>  6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  7 <title>登录处理页</title>  8 </head>  9 <body> 10 11 <% 12 13 //接收登录表单用户名,密码 14 String user = request.getParameter("user"); 15 String password = request.getParameter("password"); 16 17 //如果没有收到用户名,跳转错误页面 18 if(user == null || user.trim().length() == 0) 19 { 20  response.sendRedirect("cuowu.jsp?mes=1"); 21 } 22 23 //如果没有收到密码,跳转错误页面 24 else if(password == null || password.trim().length() == 0) 25 { 26  response.sendRedirect("cuowu.jsp?mes=2"); 27 } 28 29 // 30 else 31 { 32 33 //取出用户名对应的application对象 34 Object o = application.getAttribute(user); 35 36 //如果没找到application对象 37 if(o == null) 38  { 39 //跳转到错误页面 40  response.sendRedirect("cuowu.jsp?mes=6"); 41  } 42 43 //如果找到 44 else 45  { 46 47 //从application对象中取出昵称,密码 48 String inich = o.toString().split("#")[1]; 49 String ipassw = o.toString().split("#")[2]; 50 51 //判断密码如果正确 52 if(ipassw.trim().equals(password.trim())) 53  { 54 //登录成功输出欢迎信息 55 String zhnich = new String(inich.getBytes("iso-8859-1"),"utf-8");//中文乱码处理 56  out.print("欢迎" + zhnich + "登录!" + " <a href='liuyan.jsp'>留言</a> <a href='zhuxiao.jsp'>注销</a>"); 57 58 //创建会话对象,存入昵称 59  session.setAttribute("user", zhnich); 60  } 61 62 //如果密码错误,跳转错误页面 63 else 64  { 65  response.sendRedirect("cuowu.jsp?mes=7"); 66  } 67  } 68 } 69 70 71 %> 72 73 </body> 74 </html>

3.留言功能,一个页面,liuyan.jsp

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  2  pageEncoding="UTF-8"%>  3 <%@ page import = "java.util.*" %>  4 <%@ page import ="java.text.*" %>  5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  6 <html>  7 <head>  8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  9 <title>留言簿</title>  10 <%  11  12 String userName = "";  13  14 //检查登录状态  15 Object o = session.getAttribute("user");  16  17 //如果会话不存在,说明登录失效,跳转错误页面  18 if(o == null)  19 {  20  response.sendRedirect("cuowu.jsp?mes=8");  21 }  22 //如果存在,取留言人  23 else  24 {  25  userName = o.toString();  26 }  27  28 //获取表单留言  29 String liuyan = request.getParameter("liuyan");  30  31 //如果留言不为空  32 if(liuyan != null && liuyan != "")  33 {  34  35 String strly = new String(liuyan.getBytes("ISO-8859-1"),"utf-8");  36  37 //附加时间信息  38 Date dt = new Date();  39  SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  40  41 //获取以liuyan为名称的application对象  42 Object obj = application.getAttribute("liuyan");  43  ArrayList<String> A;  44  45 //如果对象为空,说明这是第一条留言,则创建集合类对象A  46 if(obj == null)  47  {  48  A = new ArrayList<String>();  49  }  50  51 //如果不为空将以前的留言赋给集合A  52 else  53  {  54  A = (ArrayList<String>)obj;  55  }  56  57 //将新留言信息加入集合  58  A.add(strly + " &nbsp;&nbsp;&nbsp;留言日期:" +df.format(dt) + " &nbsp;&nbsp;&nbsp;留言人:" + userName);  59  60 //将留言集合A写入application对象  61  application.setAttribute("liuyan", A);  62  63 }  64  65 //如果没有输入留言就提交表单则刷新页面而不输出  66 else  67 {  68  69 }  70  71 %>  72  73  74 </head>  75 <body>  76  77 最新留言:<br><br>  78 <%  79  80 //留言编号  81 int n = 1;  82  83 //获取以liuyan为名称的application对象  84 Object obj = application.getAttribute("liuyan");  85  86 //如果不为空,遍历集合A,输出留言信息  87 if(obj != null)  88 {  89  90  ArrayList<String> A = (ArrayList<String>)obj;  91  92 for(int i = A.size()-1; i >= 0; i--)  93  {  94  95  out.print(n + "." + A.get(i) + "<br>");  96  n++;  97  }  98 }  99 100 %> 101 <form> 102 <br>请输入留言内容:<br> 103 <textarea rows=10 cols =30 name="liuyan"></textarea><br> 104 105 <input type="submit" value="提交"> 106 <br> 107 <a href="zhuxiao.jsp">注销</a> 108 </form> 109 </body> 110 </html>

4.公共页面

cuowu.jsp错误提示页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  2  pageEncoding="UTF-8"%>  3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  4 <html>  5 <head>  6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  7 <title>错误显示跳转页</title>  8 </head>  9 <body> 10 11 <% 12 13 //接收错误代码 14 String mes = request.getParameter("mes"); 15 16 //如果没有收到,或者不是正整数,提示出错 17 if(mes == null || !(mes.matches("\\d+"))) 18 { 19  out.print("请正确传递错误代码!"); 20 } 21 else 22 { 23 int imes = Integer.parseInt(mes); 24 //根据错误代码输出相应错误信息 25  switch(imes) 26  { 27 case 1 : 28  out.print("用户名无效"); 29  break; 30 case 2 : 31  out.print("密码无效"); 32  break; 33 case 3 : 34  out.print("昵称无效"); 35  break; 36 case 4 : 37  out.print("用户已存在"); 38  break; 39 case 5 : 40  out.print("注册成功!稍后转到登录页面"); 41  break; 42 case 6 : 43  out.print("用户不存在"); 44  break; 45 case 7 : 46  out.print("密码错误"); 47  break; 48 case 8 : 49  out.print("登录已失效,请重新登录"); 50  break; 51  default: 52  out.print("无效的错误代码"); 53  break; 54 55  } 56 57 } 58 //3秒后重定向至登录页面 59 response.setHeader("refresh", "3;URL=login.jsp"); 60 61 %> 62 63 64 </body> 65 </html>

zhuxiao.jsp注销页面

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"  2  pageEncoding="UTF-8"%>  3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  4 <html>  5 <head>  6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">  7 <title>注销处理</title>  8 </head>  9 <body> 10 <% 11 //注销会话后跳转至登录页面 12 session.invalidate(); 13 response.sendRedirect("login.jsp"); 14 %> 15 </body> 16 </html>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/109227.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号