cookie制作保存密码的登陆页面

第一步:写一个jsp页面,制作登陆页面的表格。如果coolie中已经保存了用户名和密码信息,可以不用输入,直接再登陆页面直接显示出来。

<h1>登陆页面</h1>
	<hr>
	<%
		String username = "";
		String password = "";
		Cookie[] cookies = request.getCookies();
		for (Cookie c : cookies) {
			if (c.getName().equals("username")) {
				username = URLDecoder.decode(c.getValue(), "utf-8");
			}
			if (c.getName().equals("password")) {
				password = URLDecoder.decode(c.getValue(), "utf-8");
			}
		}
	%>
	<form action="doLogin.jsp" method="post">
		<table>
			<tr>
				<td>用户名:</td>
				<td><input type="text" name="username" value="<%=username%>"></td>
			</tr>
			<tr>
				<td>密码:</td>
				<td><input type="password" name="password"
					value="<%=password%>"></td>
			</tr>
			<tr>
				<td><input type="checkbox" name="remember" checked="checked"
					value="true">是否记住账号密码</td>
			</tr>
			<tr>
				<td><input type="submit" value="提交"></td>
			</tr>
		</table>
	</form>

第二步:写一个处理提交表单信息的jsp页面,得到表单中的信息,如果勾选框勾中的话,将用户名和密码信息存放在新创建的cookie对象中,如果没有勾中的,将cookie中原来保存的信息也清除。

<h1>表单处理页面</h1>
	<hr>
	<%request.setCharacterEncoding("utf-8"); %>
	<%
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		String isRemember = request.getParameter("remember");
		if (isRemember != null) {
			Cookie usernameCookie = new Cookie("username", URLEncoder.encode(username, "utf-8"));
			Cookie passwordCookic = new Cookie("password", URLEncoder.encode(password, "utf-8"));
			usernameCookie.setMaxAge(24 * 60 * 60);
			passwordCookic.setMaxAge(24 * 60 * 60);
			response.addCookie(usernameCookie);
			response.addCookie(passwordCookic);
		} else {
			Cookie[] cookies = request.getCookies();
			for (Cookie c : cookies) {
				if (c.getName().equals("username") || c.getName().equals("password")) {
					c.setMaxAge(0);
				}
				response.addCookie(c);
			}
		}
	%>
	用户名:<%=username %>
	<br>
	密码:<%=password %>
	<br>
	<a href="test.jsp">点我测试cookie是否保存信息</a>

第三步:写一个测试jsp页面,看cookie对象是否创建,如果保存了信息的话,可以从这里页面中显示出来。

<h1>测试cookie是否保存页面</h1>
	<hr>
	
	<%
		String username = "";
		String password = "";
		Cookie[] cookies = request.getCookies();
		for (Cookie c : cookies) {
			if (c.getName().equals("username")) {
				username = URLDecoder.decode(c.getValue(), "utf-8");
			}
			if (c.getName().equals("password")) {
				password = URLDecoder.decode(c.getValue(), "utf-8");
			}
		}
	%>
	用户名:<%=username%><br> 密码:<%=password%>

猜你喜欢

转载自blog.csdn.net/qq_36109477/article/details/84988984
今日推荐