管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2022-09-29 594fe3c5634a389bf74fef66c51eba5accd7e033
1
已添加1个文件
已修改2个文件
已删除3个文件
195 ■■■■ 文件已修改
src/main/java/com/lf/server/controller/sys/SignController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/entity/sys/LoginInfo.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/entity/sys/RedisCacheKey.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/entity/sys/Result.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/mapper/sys/UserMapper.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/service/data/TokenService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/lf/server/controller/sys/SignController.java
@@ -5,9 +5,6 @@
import com.lf.server.entity.data.LoginEntity;
import com.lf.server.entity.data.TokenEntity;
import com.lf.server.entity.data.UsersEntity;
import com.lf.server.entity.sys.LoginInfo;
import com.lf.server.entity.sys.Result;
import com.lf.server.entity.sys.User;
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import com.lf.server.service.data.LoginService;
@@ -45,11 +42,7 @@
    @GetMapping({"/", "/toIndex"})
    public ModelAndView toIndex(ModelAndView mv) {
        mv.setViewName("index");
        User user = null;
        if (user != null) {
            mv.addObject("msg", "Hello " + user.getLoginName() + " !");
        }
        mv.addObject("msg", "Hello " + " !");
        return mv;
    }
@@ -69,7 +62,7 @@
    /**
     * ç™»å½•认证
     *
     * @return String
     * @return ResponseMsg<TokenEntity>
     */
    @PostMapping(value = "/login", produces = "application/json; charset=UTF-8")
    public ResponseMsg<TokenEntity> login(@RequestBody UsersEntity user, HttpServletRequest req, HttpServletResponse res) {
@@ -118,15 +111,18 @@
    }
    /**
     * æ³¨é”€
     * æ˜¯å¦ç™»å½•
     *
     * @return String
     * @return ResponseMsg<String>
     */
    @GetMapping("/logout")
    public ModelAndView logout() {
        ModelAndView mv = new ModelAndView();
        mv.setViewName("login");
    @GetMapping("/islogin")
    public ResponseMsg<Boolean> isLogin(HttpServletRequest req, HttpServletResponse res) {
        try {
            Boolean flag = tokenService.isLogin(req, res);
        return mv;
            return success(flag ? "用户已登录" : "用户未登录", flag);
        } catch (Exception ex) {
            return fail(ex.getMessage(), false);
        }
    }
}
src/main/java/com/lf/server/entity/sys/LoginInfo.java
ÎļþÒÑɾ³ý
src/main/java/com/lf/server/entity/sys/RedisCacheKey.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package com.lf.server.entity.sys;
/**
 * Redis缓存键
 * @author WWW
 */
public class RedisCacheKey {
    /**
     * ç™»å½•时令牌作为key
     *
     * @param key
     * @return
     */
    public static String ssoKey(String key) {
        return "sign:token:" + key;
    }
}
src/main/java/com/lf/server/entity/sys/Result.java
ÎļþÒÑɾ³ý
src/main/java/com/lf/server/mapper/sys/UserMapper.java
ÎļþÒÑɾ³ý
src/main/java/com/lf/server/service/data/TokenService.java
@@ -2,12 +2,16 @@
import com.lf.server.entity.data.LoginEntity;
import com.lf.server.entity.data.TokenEntity;
import com.lf.server.entity.sys.RedisCacheKey;
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import com.lf.server.mapper.data.TokenMapper;
import com.lf.server.service.sys.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
@@ -18,6 +22,8 @@
@Service
public class TokenService implements TokenMapper {
    @Autowired
    private RedisService redisService;
    @Autowired
    TokenMapper tokenMapper;
@@ -81,4 +87,18 @@
        return te;
    }
    public Boolean isLogin(HttpServletRequest req, HttpServletResponse res) {
        String token = WebHelper.getToken(req);
        if (StringHelper.isNull(token)) {
            return false;
        }
        // redis
        if (redisService.hasKey(RedisCacheKey.ssoKey(token))) {
            return true;
        }
        return false;
    }
}