美文网首页好文章AndroidAndroid
JSon实体类快速生成插件 GsonFormat 1.2.2

JSon实体类快速生成插件 GsonFormat 1.2.2

作者: 轻微 | 来源:发表于2015-01-10 23:58 被阅读29316次

    写在前头:本插件只适用 android studio和 Intellij IDEA 工具!!!

    这是根据JSONObject格式的字符串,自动生成实体类.

    github
    jetbrains
    Android Arsenal
    swift 版
    Json 新视觉

    版本更新说明

    v1.2.2

    1. Support field type changes.
    • Support shortcut to open GsonFormat, default option + s (mac), alt + s (win)
    • Support for field name changes.
    • Support add the prefix field.
    • Support for multiple conversion library (Gson, Jackjson, FastJson, LoganSquare).
    • Support private and public modes.
    • Support Filter superclass an existing fields.
      版本1.3.0

    版本1.2.2

    1. 支持 field 类型的修改.
    • 支持快捷键打开 GsonFormat ,默认为 option+s(mac), alt+s(win)
    • 支持 field 名称的修改.
    • 支持添加 field 前缀.
    • 支持多种转换库 (Gson,Jackjson,FastJson,LoganSquare).
    • 支持 private 和 public 两种模式.
    • 支持过滤父类已有属性.

    安装方法##

    方法1:

    1.Android studio  
     File->Settings..->Plugins-->Browse repositores..搜索GsonFormat
    2.安装插件,重启android studio
    

    方法2: 下载地址

         1.下载 GsonFormat.jar ,
         2.Android studio  File->Settings..->Plugins -->
     install plugin from disk..导入下载的 GsonFormat.jar ,
         3重启 android studio .
    

    打开方法##

    1. 使用Generate的快捷键.
      快捷键:图中选中的部分
      Generate快捷键.png
      我这边的快捷键是 command+n;
    • 使用 GsonFommat 的快捷键.
      默认 option + s (mac), alt + s (mac)
      通过以下方式修改快捷键:
      修改快捷键.png

    使用截图

    gsonFormat.gif

    相关文章

      网友评论

      • 马拉松Mara:很好很强大
      • 47fe3088500c:编程开发真是俗手累死 高手闲死 试了下不到一分钟生成了一个1000行的实体类 3行代码和Gson库对接起来 全部就自动化完成了 表示根本没看JSON的格式 有点吓人 这效率 嗖嗖嗖的 Google 地球最强
      • 7ef5e6a31505:作者这个插件很不错,可惜了不支持date类型的
        轻微:@7ef5e6a31505 来尝试实现一把. 提个pr 过来呗.
      • 58c03b8dd9d5:楼主你好 我这边写了个模板,把判空操作,以及注解,和一些防止创建多余对象的编码实践,都可以固化到模板中,看了下评论列表大家也有类似的需求,有兴趣可以对接下,这是github地址,多多支持 https://github.com/Gyappy/GetterAndSetterTemplate
      • 58c03b8dd9d5:你好 请教下 请问这个插件如何自定义getter/setter的模板。看样子你的内部应该直接使用的系统默认的模板,我自己写了个模板,怎么和这东西对接下呢?
      • bfdd5204a1df:你好,有个小问题。当返回值为null时,默认类型为Object,无法修改为其他类型
        轻微:@imbaymax 算是一个bug
      • 轻微:这周末要出一个新的版本了。
        58c03b8dd9d5:@cvite 这种判空操作,以及注解,和一些防止创建多余对象的编码实践,都可以固化到模板中,不知楼主这个插件能否自定义模板。
        轻微:@cvite 你这样的做法应该是不提倡的。 你这样怎么判断是返回为空字符串还是空。 不太建议做这样的处理。 像你这种情况可以在声明的时候给默认值得。
        cvite:@轻微 有一个这样的地方不知道插件做起来麻烦与否,就是很多时候后端返回的数据总是可能存在null的情况,能否在Format的时候自定对get方法加上空判断,且自动创建对象呢。
        例如:
        public String getXX(){
        String result=xX;
        if(result==null){
        result=new String();
        }
        return result;
        }
        这样外部就不会报空指针了,蛋疼= = :sob:
      • wmszhe:不支持Date类型的吗?
        轻微:@weee 是
      • cvite:提交一个bug,当为一个结构复杂的json的时候,如果我选择局部的生成bean的话,无法生成出来
        轻微:@cvite 收到
      • cvite:希望能对生成的bean增加空判断处理,为空的话返回一个默认的数据类型,通过设置来进行设置某种类型的默认类型 :smiley:
      • 考拉冰阔落:哥我java一直学的很迷茫,感觉就是搬砖,深入不到重点,求指导
      • 轻微:我要更新 1.2.2 版, 修修补补版
      • Alien的小窝:使用gsonformat转换json为实体(带有内部类的), 然后 Gson gson = new Gson();
        News news = gson.fromJson(jsonString, News.class); 为什么不行????
        Alien的小窝: @轻微 是我弄错了。gson生成实体 后 弄错了json字符串。张冠李戴了
        轻微:@编程之乐 报什么错误?
      • 88469d3c0f08:你好 请问这种Json怎么使用Gson解析呢
        {
        "0": {
        "hottime": "2015-11-09",
        "title": "我们有以后吗",
        "description": "分享每一天",
        "picUrl": "http://zxpic.gtimg.com/infonew/0/wechat_pics_-2331689.jpg/640",
        "url": "http://mp.weixin.qq.com/s?__biz=MzA4MDA2NjcxMg==&idx=3&mid=400339943&sn=0c3a5775919dc96a83631059e6236279"
        },
        "1": {
        "hottime": "2015-11-08",
        "title": "在路上,我们一直在努力",
        "description": "汽车912",
        "picUrl": "http://zxpic.gtimg.com/infonew/0/wechat_pics_-2327577.jpg/640",
        "url": "http://mp.weixin.qq.com/s?__biz=MjE1MjMwMzM4MQ==&idx=6&mid=400588707&sn=59fc61e50ebfe14bb27931b4bbf758c6"
        },
        "2": {
        "hottime": "2015-11-08",
        "title": "习大大,你让我们都想辞职去重庆!",
        "description": "重庆",
        "picUrl": "http://zxpic.gtimg.com/infonew/0/wechat_pics_-2320913.jpg/640",
        "url": "http://mp.weixin.qq.com/s?__biz=MjM5NjAxNjY4MA==&idx=1&mid=400567020&sn=ec96ff7d12a604c5c95d76810b77bbf0&qb_mtt_show_type=1"
        },
        "code": 200,
        "msg": "ok"
        }
        轻微:@一只叫扁食的猫1993 或者在解析完列出的列表,手动去修改不符合项
        轻微:@一只叫扁食的猫1993 因为你使用了纯数字当key 所以要设置field的前缀,和启用use serilizedname。
      • 542c5b26283d:很好很强大
        轻微:@AzusaL 😊
      • 轻微:新增处女座模式(virgo mode) :smiley:
        轻微:@Glanms 支持自定义每个Filed 的名称.粗糙的我是不care 这些
        1ff5f0e80448:@轻微 怎么理解。。。
      • 轻微:下个版本1.2 会是一个较为完善的版本.将会是一个可以不更新好久的一个版本..
      • 轻微:@BlackSwift pojo数据不需要混淆

      本文标题:JSon实体类快速生成插件 GsonFormat 1.2.2

      本文链接:https://www.haomeiwen.com/subject/jonfxttx.html