新增记住密码功能

v1.3
xueli.xue 9 years ago
parent baa61b0151
commit 00465f53c6

@ -42,11 +42,15 @@ public class IndexController {
@RequestMapping(value="login", method=RequestMethod.POST) @RequestMapping(value="login", method=RequestMethod.POST)
@ResponseBody @ResponseBody
@PermessionLimit(limit=false) @PermessionLimit(limit=false)
public ReturnT<String> loginDo(HttpServletRequest request, HttpServletResponse response, String userName, String password){ public ReturnT<String> loginDo(HttpServletRequest request, HttpServletResponse response, String userName, String password, String ifRemember){
if (!PermissionInterceptor.ifLogin(request)) { if (!PermissionInterceptor.ifLogin(request)) {
if (StringUtils.isNotBlank(userName) && StringUtils.isNotBlank(password) if (StringUtils.isNotBlank(userName) && StringUtils.isNotBlank(password)
&& "admin".equals(userName) && "123456".equals(password)) { && "admin".equals(userName) && "123456".equals(password)) {
PermissionInterceptor.login(response); boolean ifRem = false;
if (StringUtils.isNotBlank(ifRemember) && "on".equals(ifRemember)) {
ifRem = true;
}
PermissionInterceptor.login(response, ifRem);
} else { } else {
return new ReturnT<String>(500, "账号或密码错误"); return new ReturnT<String>(500, "账号或密码错误");
} }

@ -18,8 +18,8 @@ public class PermissionInterceptor extends HandlerInterceptorAdapter {
public static final String LOGIN_IDENTITY_KEY = "LOGIN_IDENTITY"; public static final String LOGIN_IDENTITY_KEY = "LOGIN_IDENTITY";
public static final String LOGIN_IDENTITY_VAL = "sdf!121sdf$78sd!8"; public static final String LOGIN_IDENTITY_VAL = "sdf!121sdf$78sd!8";
public static boolean login(HttpServletResponse response){ public static boolean login(HttpServletResponse response, boolean ifRemember){
CookieUtil.set(response, LOGIN_IDENTITY_KEY, LOGIN_IDENTITY_VAL); CookieUtil.set(response, LOGIN_IDENTITY_KEY, LOGIN_IDENTITY_VAL, ifRemember);
return true; return true;
} }
public static void logout(HttpServletRequest request, HttpServletResponse response){ public static void logout(HttpServletRequest request, HttpServletResponse response){

@ -19,10 +19,19 @@ public class CookieUtil {
* @param response * @param response
* @param key * @param key
* @param value * @param value
* @param ifRemember
*/ */
public static void set(HttpServletResponse response, String key, String value) { public static void set(HttpServletResponse response, String key, String value, boolean ifRemember) {
int age = COOKIE_MAX_AGE;
if (ifRemember) {
age = COOKIE_MAX_AGE;
} else {
age = -1;
}
Cookie cookie = new Cookie(key, value); Cookie cookie = new Cookie(key, value);
cookie.setMaxAge(COOKIE_MAX_AGE); // Cookie过期时间,单位/秒 cookie.setMaxAge(age); // Cookie过期时间,单位/秒
cookie.setPath(COOKIE_PATH); // Cookie适用的路径 cookie.setPath(COOKIE_PATH); // Cookie适用的路径
response.addCookie(cookie); response.addCookie(cookie);
} }

@ -26,7 +26,7 @@
<div class="col-xs-8"> <div class="col-xs-8">
<div class="checkbox icheck"> <div class="checkbox icheck">
<label> <label>
<input type="checkbox"> Remember Me <input type="checkbox" name="ifRemember" > Remember Me
</label> </label>
</div> </div>
</div><!-- /.col --> </div><!-- /.col -->

Loading…
Cancel
Save