javaweb自动登录
怕忘记简单的记录一下
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form method="post" action="CookieServlet">
<p>用户名:<input id="username" type="text" name="username"></p>
<p>密码:<input id="password" type="password" name="password"></p>
<button type="submit">提交</button>
</form>
<script>
var usernameEle = document.getElementById("username");
var passwordEle = document.getElementById("password");
// 从Cookie内读取用户名和密码
var cookie = document.cookie;
var arr = cookie.split(";"); // cookie的键值对数组
for (var i = 0; i < arr.length; i++) {
var arr2 = arr[i].split("=");
// 将用户名设置到用户名的输入框
if ("username" === arr2[0].trim()) {
usernameEle.value = arr2[1];
}
// 将用户名设置到密码的输入框
if ("password" === arr2[0].trim()) {
passwordEle.value = arr2[1];
}
}
</script>
</body>
</html>
Java
package controller;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* 自动登录
*/
@WebServlet("/CookieServlet")
public class CookieServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取用户名和密码
String username = request.getParameter("username");
String password = request.getParameter("password");
// 验证用户信息
if ("admin".equals(username)
&& "12345".equals(password)) {
response.setContentType("text/html;charset=utf-8");
// 返回成功信息
response.getWriter().append("用户登录成功!");
// 将用户登录信息写入Cookie
Cookie usernameCookie = new Cookie("username", username);
Cookie passwordCookie = new Cookie("password", password);
usernameCookie.setMaxAge(3600 * 24); // 设置Cookie的到期时间(以秒为单位)
passwordCookie.setMaxAge(3600 * 24);
response.addCookie(usernameCookie);
response.addCookie(passwordCookie);
} else {
response.getWriter().append("用户登录失败!");
}
}
}