3.企業級許可權管理系統 原始的登入request response 登入
阿新 • • 發佈:2018-12-09
@RequestMapping("/login.page")
public void login(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
String username = request.getParameter("username");
String password = request.getParameter("password");
SysUser sysUser = sysUserService. findByKeyword(username);
String errorMsg = "";
String ret = request.getParameter("ret");
if (StringUtils.isBlank(username)) {
errorMsg = "使用者名稱不可以為空";
} else if (StringUtils.isBlank(password)) {
errorMsg = "密碼不可以為空";
} else if (sysUser == null) {
errorMsg = "查詢不到指定的使用者";
} else if (!sysUser.getPassword().equals(MD5Util.encrypt(password))) {
errorMsg = "使用者名稱或密碼錯誤";
} else if (sysUser.getStatus() != 1) {
errorMsg = "使用者已被凍結,請聯絡管理員";
} else {
// login success 放入request
request.getSession().setAttribute("user", sysUser);
if (StringUtils.isNotBlank(ret)) {
//如果ret有值,重定向到ret
response.sendRedirect(ret);
} else {
//重定向 到 首頁
response.sendRedirect("/admin/index.page"); //TODO
}
return;
}
//設定錯誤 資訊 使用者名稱 需要跳轉的路徑
request.setAttribute("error", errorMsg);
request.setAttribute("username", username);
if (StringUtils.isNotBlank(ret)) {
request.setAttribute("ret", ret);
}
String path = "signin.jsp";//轉發到預設的登入頁面
request.getRequestDispatcher(path).forward(request, response);
}
<select id="findByKeyword" parameterType="string" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List" />
FROM sys_user
WHERE telephone = #{keyword}
OR mail = #{keyword}
</select>