@ApiOperation(value = "用户登陆",notes="用户登陆",httpMethod="POST")
@PostMapping("/login")
public JSONResult login(@RequestBody UserBO userBO, HttpServletRequest request, HttpServletResponse response) throws Exception{
String username=userBO.getUsername();
String password=userBO.getPassword();
//1、判断用户名和密码必须不为空
if(StringUtils.isBlank(username)||
StringUtils.isBlank(password)){
return JSONResult.errorMsg("用户名或密码不能为空");
}
//2、实现登陆
Users userResult = userService.queryUserForLogin(username, MD5Utils.getMD5Str(password));
if(userResult==null){
return JSONResult.errorMsg("用户名或密码不正确");
}
userResult=setNullProperty(userResult);
//将查询出来的信息设置到cookie里面去保存
CookieUtils.setCookie(request,response,"user", JsonUtils.objectToJson(userResult));
return JSONResult.ok(userResult);
}
private Users setNullProperty(Users userResult){
userResult.setPassword(null);
userResult.setPassword(null);
userResult.setEmail(null);
userResult.setCreatedTime(null);
userResult.setUpdatedTime(null);
userResult.setBirthday(null);
return userResult;
}
package com.ljl.utils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
/**
* @Description: Cookie 工具类
*/
public final class CookieUtils {
final static Logger logger = LoggerFactory.getLogger(CookieUtils.class);
/**
*
* @Description: 得到Cookie的值, 不编码
* @param request
* @param cookieName
* @return
*/
public static String getCookieValue(HttpServletRequest request, String cookieName) {
return getCookieValue(request, cookieName, false);
}
/**
*
* @Description: 得到Cookie的值
* @param request
* @param cookieName
* @param isDecoder
* @return
*/
public static String getCookieValue(HttpServletRequest request, String cookieName, boolean isDecoder) {
Cookie[] cookieList = request.getCookies();