重生之我在地球Online学JAVA day20
一、序列化与反序列化
创建一个User对象
1、JDK序列化
(1)实现 Serializable 接口
▼text复制代码public class User implements Serializable { // 必须加 private String name; private int age; }
(2)JDK序列化代码
▼text复制代码// 序列化:对象 → 字节数组 ByteArrayOutputStream bos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(bos); oos.writeObject(user); byte[] bytes = bos.toByteArray(); // 反序列化:字节数组 → 对象 ByteArrayInputStream bis = new ByteArrayInputStream(bytes); ObjectInputStream ois = new ObjectInputStream(bis); User user = (User) ois.readObject();
JDK 缺点:代码超级繁琐、速度慢、体积巨大、必须实现 Serializable、有安全风险。 2、Kryo 序列化(现在主流) (1)不需要实现 Serializable 接口
▼text复制代码public class User { // 不用加 implements Serializable! private String name; private int age; }
(2)Kryo序列化代码
▼text复制代码// 1. 创建 Kryo Kryo kryo = new Kryo(); // 2. 序列化:对象 → 字节数组 Output output = new Output(1024); kryo.writeObject(output, user); byte[] bytes = output.toBytes(); // 3. 反序列化:字节数组 → 对象 Input input = new Input(bytes); User user = kryo.readObject(input, User.class);
Kryo 优点:代码超级简单、速度快 10 倍、体积小 5 倍、不用写任何接口、不用写 get/set 也能序列化、Spring Cloud / Redis 都用它。 二、项目目前学到的知识点 1、提示词工程的设置 2、Spring AI三大架构: (1)ChatClient 身份:总指挥 / 入口 作用:发请求、收响应、调度所有组件。 (2)ChatMemory 身份:存储器 / 硬盘 作用:专门负责存数据(聊天记录)。 (如:你的文件存储、内存存储) (3)Advisor 身份:拦截器 / 增强器 / 插件 作用:在请求前后做功能增强。 其中ChatMemoryAdvisor(把 ChatMemory 里存的历史记录读取出来,带给 AI)、MyLoggerAdvisor日志(打印请求和响应。)、ReReadingAdvisor(重读,让 AI 读两遍题目,增强AI理解能力)都属于Advisor里面的 3、Record语法
▼text复制代码record LoveReport(String title, List<String> suggestions) { }
Record = 极简版 Java 类 自动帮你生成: 构造方法 getter equals / hashCode toString 类似于
▼text复制代码public class LoveReport { private String title; private List<String> suggestions; // 构造、get、set、toString... }
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
内容推荐
Day 74时间15:00~ 18:00(3h)✅ 今天做了:过滤器、拦截器⏰ 明天计划:AOP📚 今日感悟:过滤器对所有请求做统一预处理(如编码、压缩);拦截器在具体方法执行前后做权限校验、日志等精细化控制。前者更底层通用,后者更贴近业务逻辑。不管过滤器还是拦截器,只要符合路径匹配的,都会走一遍流程
2
Day 37✅ 今天做了:1、扇贝英语单词打卡2、微信阅读15分钟3、英语听说读写4、编程导航学习⏰ 明天计划:待定📚 今日感悟:Keep going!
2
Day 1✅ 今天做了:学了最基本的DFS,完成了洛谷上相关的4道题⏰ 明天计划:继续刷DFS,并且复习二分📚 今日感悟:码途遥远,道阻且长……
1
Day 38✅ 今天做了:1、扇贝英语单词打卡2、微信阅读15分钟3、英语听说读写4、编程导航学习⏰ 明天计划:待定📚 今日感悟:Keep going!
1
Day 115✅ 今天做了:学习了jdbc⏰ 明天计划:继续学习mysql
0
