From 2fcd97552d16718cc7997629fd637a73a5a4483f Mon Sep 17 00:00:00 2001 From: 郑永安 <zyazyz250@sina.com> Date: 星期一, 19 六月 2023 14:44:19 +0800 Subject: [PATCH] 删除 --- src/main/java/com/gk/firework/Domain/Utils/CommonUtil.java | 139 ++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 139 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gk/firework/Domain/Utils/CommonUtil.java b/src/main/java/com/gk/firework/Domain/Utils/CommonUtil.java new file mode 100644 index 0000000..b8bdc08 --- /dev/null +++ b/src/main/java/com/gk/firework/Domain/Utils/CommonUtil.java @@ -0,0 +1,139 @@ +package com.gk.firework.Domain.Utils; + +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.setting.Setting; +import com.google.common.base.Splitter; +import com.google.common.collect.Lists; +import io.jsonwebtoken.Claims; +import io.jsonwebtoken.Jwts; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Optional; +import java.util.function.Function; +import java.util.function.Supplier; +import java.util.stream.Collectors; + +/** + * 常用工具类 + * + * @author zhangby + * @date 2019-05-13 12:20 + */ +public class CommonUtil { + + /** + * 解析token + * @return + */ + public static Claims parseJwtNoBearer(String jwt){ + try{ + Claims claims = Jwts.parser() + .setSigningKey("springCloud_oauth_service".getBytes()) + .parseClaimsJws(jwt).getBody(); + return claims; + }catch(Exception ex){ + ex.printStackTrace(); + return null; + } + } + + /** + * 解析token + * @param jsonWebToken + * @param base64Security + * @return + */ + public static Claims parseJWT(String jsonWebToken, String base64Security){ + String jwt = jsonWebToken.replace("Bearer ", ""); + try{ + Claims claims = Jwts.parser() + .setSigningKey(base64Security.getBytes()) + .parseClaimsJws(jwt).getBody(); + return claims; + }catch(Exception ex){ + ex.printStackTrace(); + return null; + } + } + + /** + * 解析token + * @param jsonWebToken + * @return + */ + public static Claims parseJWT(String jsonWebToken){ + return emptyStr(jsonWebToken).map(token -> CommonUtil.parseJWT(token, "springCloud_oauth_service")).orElse(null); + } + + /** + * list数据转换 + * @param list list对象 + * @param func lamdba 表达式 function + * @param <E> 原对象 + * @param <T> 转换完的对象 + * @return List<E> + */ + public static <E,T> List<E> convers(List<T> list, Function<T, E> func) { + return list.stream().collect(ArrayList::new, (li, p) -> li.add(func.apply(p)), List::addAll); + } + + /** + * 加载错误信息 + * @return + */ + public static String loadErrorMsg(String num, Object... msg) { + //获取错误码配置信息 + Setting errorSetting = ConfigUtil.getErrorSetting(); + //获取错误码 + String errMsg = errorSetting.get(StrUtil.format("code_{}", num)); + if (ObjectUtil.isNotNull(msg)) { + errMsg = StrUtil.format(errMsg, msg); + } + return errMsg; + } + + /** + * 字符串模板替换 截取 + * ClassTest::getDictList4Function,{}::{} ->[ClassTest,getDictList4Function] + * + * @param str + * @param temp + * @return + */ + public static List<String> splitStr4Temp(String str, String temp) { + List<String> rsList = Lists.newArrayList(); + Iterator<String> iterator = Splitter.on("{}").omitEmptyStrings().split(temp).iterator(); + while (iterator.hasNext()) { + str = str.replace(iterator.next(), "〆"); + } + Iterator<String> split = Splitter.on("〆").omitEmptyStrings().split(str).iterator(); + while (split.hasNext()) { + rsList.add(split.next()); + } + return rsList.stream().filter(StrUtil::isNotBlank).collect(Collectors.toList()); + } + + /** + * 异常捕获 + * @param resolver resolver + * @param <T> T + * @return + */ + public static <T> Optional<T> resolve(Supplier<T> resolver) { + Optional<T> optional = Optional.empty(); + try { + T result = resolver.get(); + optional = Optional.ofNullable(result); + } catch (Exception e) { + optional = Optional.empty(); + } + return optional; + } + + public static Optional<String> emptyStr(String string) { + return Optional.ofNullable(string).filter(StrUtil::isNotBlank); + } +} -- Gitblit v1.9.2