- 博客(16)
- 收藏
- 关注
原创 【无标题】
虽然我的数学基础不太好,但是目前随着人工智能框架的发展,调用各种技术的门槛被降低,人工智能的发展也不应该只局限于数学公式的推导,所以我认为目前的ai也需要某些意义上的高级程序员,相信我自己一定能做好这个任务!本人图像生成方面研究生研一,研一第一学期已经过去,但是学习、研究方面并无任何有效的进展,于是决定开一个帖子来记录一下我的学习路线,同时也是对我学习内容的梳理与督促,先开一个坑,后续再更;
2024-02-29 11:03:13
298
原创 fastjson源码分析4-JSONserializer
2021SC@SDUSCJSONserializer分析这次来分析一个核心类,我们观察toJSONString的方法,发现序列化的关键就是JSONserializer对象的处理。 public static String toJSONString(Object object, // SerializeConfig config, // Seria
2023-09-11 09:05:31
1136
原创 fastjson源码分析SerializerFeature分析
2021SC@SDUSC简介本篇博客是对SerializerFeature类,即序列化特征做一个分析SerializerFeature的作用我们来举个简单的例子来说明一下SerializerFeature的作用,首先我们创建一个简单的符合JavaBea规范的类:public class User { private String name; private String age;}其中的get和set方法省略没有写出来;然后我们以调用toJSONString方法为例说明:
2023-09-11 09:05:20
5273
原创 fastjson源码分析-序列化回调接口实现分析
2021SC@SDUSC特定序列化实现解析以MapSerializer序列化为例的分析按照代码的顺序第一个分析到Map序列化器,内部调用write: public void write(JSONSerializer serializer , Object object , Object fieldName , Type fieldType , int features) throws IOExceptio
2023-09-11 09:05:13
212
原创 fastjson源码分析-JSON Token解析
2021SC@SDUSC简介这个章节主要讨论关于对象&字段相关词法解析的apiInt类型字段解析当反序列化java对象遇到整型int.class字段会调用该方法解析:public int scanInt(char expectNext) { matchStat = UNKNOWN; int offset = 0; char chLocal = charAt(bp + (offset++)); /** 取整数第一个字符判断是
2023-09-11 09:05:04
1222
原创 fastjson源码分析-JSONToken
2021SC@SDUSC上篇我们分析了MapSerializer和JavaBeanSerializer,这篇我们来分析token;JSONToken成员:com.alibaba.fastjson.parser.JSONToken定义了fastjson需要的token标识符: /** 1 关联到 error */ public final static int ERROR = 1; /** 2 关联到 int */ public final st
2023-09-11 09:04:39
971
原创 fastjson源码分析-ObjectSerializer
fastjson源码分析,具体分析了MapSerializer类和JavaBeanSerializer
2023-09-11 09:04:30
1994
原创 fastjson源码分析——SerializeFilter使用及分析
2021SC@SDUSC简介本篇主要分析SerializeFilter,首先做个大体的介绍,然后展示它的简单使用,最后简单分析它的源码介绍SerializeFilter可以定制我们转换json的场景,比如我们在转换某些对象为其JSON表示形式时,我们对于有些对象中的某些属性可能不想转换,或者当我们从数据库中拿出所有的条目时只有部分符合条件的对象应该转换为JSON对象并通过网络传输,若使用fastjson转换,这个时候就要用到SerializeFilter来定制我们的使用场景。我们观察Serial
2023-09-11 09:04:21
3523
原创 fastjson源码分析-toJSONBytes分析
2021SC@SDUSC简介本篇博客主要分析一下fastjson的toJSONBytes方法简单使用public static byte[] toJSONBytes(Object object, SerializerFeature... features) { return toJSONBytes(object, DEFAULT_GENERATE_FEATURE, features); }这是我们去调用的方法,来看看简单使用: Season season = new S
2023-09-11 09:04:13
3142
原创 FastJSON源码分析-SerializeConfig类的分析
2021SC@SDUSC本篇简介public static String toJSONString(Object object, SerializeConfig config, SerializerFeature... features) { return toJSONString(object, config, (SerializeFilter) null, features); }我们在前面的文章分析toJSONString的过程中看到除了要转换为JSON字符串的对象外,
2023-09-11 09:04:00
4837
原创 fastjson源码分析五-toJsonString
2021SC@SDUSC public static String toJSONString(Object object, // SerializeConfig config, // SerializeFilter[] filters, // String dateForm
2023-09-11 09:03:51
433
原创 fastjson源码分析3-toJSONString
2021SC@SDUSCtoJSONString代码分析这是我们要分析的方法,通过该方法,可以将object转换为一个json形式的字符串public static String toJSONString(Object object) { return toJSONString(object, emptyFilters); }它的方法体中调用了一个重载方法,多了一个参数emptyFilters,这是一个在JSON类头部声明的SerializeFilter的一个空数组,这个S
2023-09-11 09:03:38
1936
原创 fastjson源码分析2-toJSONString方法分析
2021SC@SDUSCtoJSONString方法分析方法说明方法分析方法说明方法的使用: User user = new User("kk","123"); String s = toJSONString(user); System.out.println(s);得到的输出为:可以看到,通过toJSONString这个方法可以得到一个将java对象转为json表示方式的字符串,下面我们来根据源码分析一下这个代码。方法分析该方法是定义在JSON这个类中
2023-09-11 09:03:29
5070
原创 fastjson源码分析1-综述
2021SC@SDUSC目录综合分析1.fastjson的简单介绍2.简单使用(1)将java对象转换为json格式(2)将json对象转回为java对象3.源代码主要结构源码结构JSON类主要类的类图fastjson工作方式的分析主要包的结构分析annotation包asm包小组分工情况综合分析1.fastjson的简单介绍Fastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。Fastjson 可以操作任何
2023-09-11 09:03:15
1012
原创 fastjson源码解析-设计分析总结
2021SC@SDUSC简介本篇是fastjson源码分析的最后一篇,本篇的主要内容是对之前分析过程中的流程做个总结,并总结在之前fastjson中分析到的设计模式;类间关系下面以类图的形式给出类间关系的总览:图中的JSON抽象类是入口类,它提供了大量的静态方法;JSONObject类用于存储返回对象,继承自JSON抽象类;DefaultJSONParser类是解析器,它依赖于JSONObject类、JSONLexer接口、JSONLexerBase抽象类、ObjectDeserializer接
2023-09-11 09:01:39
2110
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人