【Spring Boot实战与进阶】Redis配置Fastjson进行序列化和反序列

  • 3、Java Bean

  • 4、引入依赖

  • 5、配置文件

  • 6、项目启动类

  • 7、查看Redis的数据

FastJson是阿里开源的一个高性能的JSON框架,FastJson数据处理速度快,无论序列化(把JavaBean对象转化成Json格式的字符串)和反序列化(把JSON格式的字符串转化为Java Bean对象),都是当之无愧的fast;功能强大(支持普通JDK类,包括javaBean, Collection, Date 或者enum);零依赖(没有依赖其他的任何类库)。

1、自定义序列化类

/**

  • 自定义序列化类

  • @param

*/

public class FastJsonRedisSerializer implements RedisSerializer {

public static final Charset DEFAULT_CHARSET = Charset.forName(“UTF-8”);

private Class clazz;

public FastJsonRedisSerializer(Class clazz) {

super();

this.clazz = clazz;

}

@Override

public byte[] serialize(T t) throws SerializationException {

if (null == t) {

return new byte[0];

}

return JSON.toJSONString(t, SerializerFeature.WriteClassName).getBytes(DEFAULT_CHARSET);

}

@Override

public T deserialize(byte[] bytes) throws SerializationException {

if (null == bytes || bytes.length <= 0) {

return null;

}

String str = new String(bytes, DEFAULT_CHARSET);

return (T) JSON.parseObject(str, clazz);

}

}

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
img

总结

无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。

面试了阿里,滴滴,网易,蚂蚁,最终有幸去了网易【面试题分享】

一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!

AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算

安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算**

  • 13
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用 Fastjson 序列化 Redis 的数据,需要在 Redis配置文件中设置序列化器的类型为 FastjsonSerializer。具体步骤如下: 1. 在 Redis配置文件 redis.conf 中,找到 `# requirepass foobared` 这一行,并将其前面的注释符号 # 去掉,设置 Redis 的密码为 foobared。这样可以提高 Redis 的安全性,避免被未经授权的用户访问。 2. 在 Redis配置文件 redis.conf 中,找到 `# bind 127.0.0.1` 这一行,并将其前面的注释符号 # 去掉,设置 Redis 只能被本地访问。这样可以避免 Redis 被未经授权的用户远程访问。 3. 在 Redis配置文件 redis.conf 中,找到 `# maxmemory <bytes>` 这一行,并将其前面的注释符号 # 去掉,设置 Redis 最大使用内存的限制。例如,设置为 1GB 的命令如下: ``` maxmemory 1gb ``` 4. 在 Redis配置文件 redis.conf 中,找到 `# appendonly no` 这一行,并将其前面的注释符号 # 去掉,启用 Redis 的 AOF (Append Only File) 持久化功能。这样可以确保 Redis 在宕机或异常退出时,数据不会丢失。 5. 在 Redis配置文件 redis.conf 中,找到 `# requirepass foobared` 这一行下面,添加以下配置: ``` # 开启 Fastjson 序列化器 # Redis 默认使用的是 JdkSerializationRedisSerializer 序列化器,但它的效率较低,不适用于大规模数据存储 # Fastjson 是一个高性能的 Java 序列化库,它能够快速地将 Java 对象转换为 JSON 字符串,并且序列化也很快 # FastjsonSerializer 是 Redisson 提供的一个 Fastjson 序列化器 # 需要添加 Redisson 的依赖 # https://github.com/redisson/redisson/wiki/Redisson%E9%85%8D%E7%BD%AE#15-%E5%BA%8F%E5%88%97%E5%8C%96 # fastjson序列化比较快,但是序列化会有一定的风险,需要根据自己的业务场景进行评估 # 详细说明可以参考 http://docs.redisson.org/en/latest/codec/FastjsonCodec/ codec: org.redisson.codec.FastjsonCodec ``` 6. 保存并关闭 Redis配置文件 redis.conf。 7. 重启 Redis 服务,让配置文件的修改生效。可以使用以下命令重启 Redis: ``` redis-cli shutdown redis-server /path/to/redis.conf ``` 其中,`/path/to/redis.conf` 表示 Redis 配置文件的路径。如果 Redis配置文件在默认路径 `/etc/redis/redis.conf` 下,可以直接使用以下命令重启 Redis: ``` redis-cli shutdown redis-server ``` 重启后,就可以使用 Fastjson 序列化 Redis 的数据了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值