diff --git a/jing-common/jing-common-redis/src/main/java/com/jing/common/redis/configure/FastJson2JsonRedisSerializer.java b/jing-common/jing-common-redis/src/main/java/com/jing/common/redis/configure/FastJson2JsonRedisSerializer.java new file mode 100644 index 0000000..db02042 --- /dev/null +++ b/jing-common/jing-common-redis/src/main/java/com/jing/common/redis/configure/FastJson2JsonRedisSerializer.java @@ -0,0 +1,52 @@ +package com.jing.common.redis.configure; + +import java.nio.charset.Charset; +import org.springframework.data.redis.serializer.RedisSerializer; +import org.springframework.data.redis.serializer.SerializationException; +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONReader; +import com.alibaba.fastjson2.JSONWriter; +import com.alibaba.fastjson2.filter.Filter; +import com.jing.common.core.constant.Constants; + +/** + * Redis使用FastJson序列化 + * + * @author ruoyi + */ +public class FastJson2JsonRedisSerializer implements RedisSerializer +{ + public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8"); + + static final Filter AUTO_TYPE_FILTER = JSONReader.autoTypeFilter(Constants.JSON_WHITELIST_STR); + + private Class clazz; + + public FastJson2JsonRedisSerializer(Class clazz) + { + super(); + this.clazz = clazz; + } + + @Override + public byte[] serialize(T t) throws SerializationException + { + if (t == null) + { + return new byte[0]; + } + return JSON.toJSONString(t, JSONWriter.Feature.WriteClassName).getBytes(DEFAULT_CHARSET); + } + + @Override + public T deserialize(byte[] bytes) throws SerializationException + { + if (bytes == null || bytes.length <= 0) + { + return null; + } + String str = new String(bytes, DEFAULT_CHARSET); + + return JSON.parseObject(str, clazz, AUTO_TYPE_FILTER); + } +} diff --git a/jing-ui/public/favicon.ico b/jing-ui/public/favicon.ico new file mode 100644 index 0000000..121ffe2 Binary files /dev/null and b/jing-ui/public/favicon.ico differ