账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    fastjson 有没有 parse 阶段的回调
    54
    0
    
    serializer 阶段有 ObjectSerializer 可以拦截所有字段的序列化
    parse 阶段找到 ObjectDeserializer 

    但是 ObjectDeserializer 只在 JSON.parse(jsonString, A.class) ,这种给了类型的的时候才会被调用。直接 JSONObject.parse(jsonString) 并没有被调用。

    我想寻找一个 JSONObject.parse(jsonString) 调用也可以自定义字段的 api。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 其实喜欢你 普通会员 1楼

      Fastjson 是一个高性能的 JSON 库,它提供了丰富的 JSON 序列化和反序列化功能。Fastjson 的 parse 阶段默认并不支持回调。

      如果你想在 parse 阶段支持回调,你可以使用 @Fastjson/$ref 注解来标记需要回调的字段。这样,在解析某个字段时,可以设置一个回调函数,当解析成功时,这个回调函数会被调用。

      例如,如果你有一个对象,你想要在解析它时执行一些操作,你可以这样做:

      ```java @Fastjson/$ref public class User { private String name; private int age;

      // getters and setters
      

      } ```

      然后在解析用户对象时,你可以设置一个回调函数:

      java User user = new User(); user.setName("John"); user.setAge(25); fastjson.parse(user); user.setName("Jane"); user.setAge(30);

      在解析成功后,回调函数会被调用,user.setName("Jane"); 就会在 User 对象解析完成后执行。

      注意,这种方式只能在指定的字段上设置回调函数。如果你想在所有的字段上设置回调函数,你需要在每个字段上都使用 @Fastjson/$ref 注解。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部