简单的JSP-Servlet登录,注册,修改密码操作

首先,用JSP写出最初的登录页面
 <Script Language="javascript"> 
  	function confirm() 
	{ 
		document.form_enter.action="ConfirmServlet"; 
		document.form_enter.submit(); 
	}
	function modify() 
	{ 
		document.form_enter.action="/jsp/enter/modify.jsp"; 
		document.form_enter.submit(); 
	} 
	
	function register() 
	{ 
		document.form_enter.action="jsp/enter/register.jsp"; 
		document.form_enter.submit();
	} 
</Script>
  
  <body>
	<div align="center">
		<form name="form_enter" action=""> 
			用户名:<input type="text" name="user"><br>
			密  码:<input type="password" name="password"><br>
			<INPUT Type="Button" Name="Confirm" value="确定 " onClick="confirm()">
			<INPUT Type="Button" Name="Register" value="注册 " onClick="register()"> 
			<INPUT Type="Button" Name="Modify" value="修改密码 " onClick="modify()"> 
		</form>
	</div>
  </body>
有两个文本输入框,外加三个按钮,定义三个函数,分别实现三个按钮的功能,下面来分析第一个确定按钮所需要对应的Servlet的实现.在ConfirmServlet里,主要复写post方法,其余就不贴了.
public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
		Administrator ad = new Administrator();
		MD5 md5 = new MD5();
		ad.setUser(request.getParameter("user"));
		ad.setPassword(md5.GetMD5Code(request.getParameter("password")));
		Operation o =new Operation();
		try {
			if(!o.check(ad)){
				request.getRequestDispatcher( "/jsp/fail/AdministratorFail.jsp").forward(request,response);
			}else{
				request.getRequestDispatcher( "/jsp/success/AdministratorSuccess.jsp").forward(request,response);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

这儿我说一下,md5.GetMD5Code()是我的一个类,对数据进行加密,可以在我的文章里面找到这个帖子,里面是MD5加密的实现方法.o.check()对用户名和密码进行验证.


下面是注册操作,通过register()跳转到注册界面

<Script Language="javascript"> 
  	function confirm() 
	{ 
		document.form_enter.action="RegisterServlet"; 
		document.form_enter.submit(); 
	}
</Script>
  <body>
    <div align="center">
		<form name="form_enter" action=""> 
			用户名:<input type="text" name="user"><br>
			密  码:<input type="password" name="password1"><br>
			再次输入:<input type="password" name="password2"><br>
			<INPUT Type="Button" Name="Confirm" value="确定 " onClick="confirm()">
		</form>
	</div>
  </body>
调用confirm函数跳转到RegisterServlet进行处理,同样只复写post函数

public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
		Administrator ad = new Administrator();
		MD5 md5 = new MD5();
		ad.setUser(request.getParameter("user"));
		Operation o =new Operation();
		try {
			if(o.checkUser(ad)){
				request.getRequestDispatcher( "/jsp/fail/RepeatUserFail.jsp").forward(request,response);//已经存在此用户
			}else{
				if(!request.getParameter("password1").equals(request.getParameter("password2"))){
					request.getRequestDispatcher( "/jsp/fail/RepeatPasswordFail.jsp").forward(request,response);
				}else{
					System.out.println("验证成功");
					ad.setPassword(md5.GetMD5Code(request.getParameter("password1")));
					o.CreaterNewAdministrator(ad);
					request.getRequestDispatcher( "/jsp/success/RegisterSuccess.jsp").forward(request,response);
				}
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
其中,checkUser()目的是检测数据库中是否已经有此用户,如果有,则返回提示的jsp界面,判断完用户名之后还要判断两次输入密码是否一致,若不一致,依然跳转.

CreaterNewAdministrator()用来在数据库中建立新账户.


  • 4
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值