精易论坛

标题: 非常强的 json自动封装到实体类, 无限嵌套, 支持别名, 原创 [打印本页]

作者: 西瓜大大    时间: 2021-10-15 14:38
标题: 非常强的 json自动封装到实体类, 无限嵌套, 支持别名, 原创
记得很早之前看见过一个自动生产getter and setter的代码
突然来了兴趣, 打算写一个功能更加强大的工具

于是他来啦
他有什么功能
1. getter and setter
2. toString()  打印对象的字符串表示形式, 无限嵌套
3. setProperties()  类似构造器吧, 但是不返回一个新的对象(可以传递参数)
4. new()  类似构造器, 返回一个新对象(可以传递参数)
5. newByJson() 本工具最强大的地方, 要是没这个功能我都不好意思发出来, 好丢人....

newByJson() 参数1:类_json  参数2 : 属性名
把json自动封装成对应的是实体类 并返回, 支持别名
======================================================
你还在解析json的时候, 手动一个一个解析并封装数据吗?
眼睛都累花了吧, 后期维护更是很麻烦?
一个大点的json数据, 你要封装到多久?

现在他来啦!

一个json从解析到封装 只需要1分钟
生成实体类的代码的小工具他来了!
如果使用?

举个例子
下面是一段json文本
{
    "code":0,
    "message":"ok",
    "data":{
        "id":16,
        "school_id":"DL0003",
        "school_name":"吴高中",
        "school_type":{
            "id":46,
            "type_name":"私人办置"
        }
    }
}


创建对应的是实体类
我们只需要声明成员变量就行!
你说变量名 和 json属性不一致怎么办?
别着急 我们给这个变量起个别名!
怎么起别名?
在备注里写上${别名}
如果你的变量是userId, json是user_id 备注里就应该写 ${user_id}
什么?你说对象里还有对象?
没关系? 这我都想到啦!
示例:




声明完变量之后呢?
什么都不用干, 不用你些任何代码哦~
使用小工具生成实体类代码

把生产的代码 直接粘贴到实体类中就ok了

这很方便吧?
时间才过去1分钟而已?
你要是问然后呢?
然后直接用了呗!

使用toString()可以打印哦

源码草草完成, 如果你发现小工具的源码很乱, 哈哈哈哈?
你要是好评 我下个版本优化优化的

本代码抛砖引玉, 希望有更优秀的代码哦





生成类代码.e

880.14 KB, 下载次数: 56, 下载积分: 精币 -2 枚

实体类.e

909.61 KB, 下载次数: 47, 下载积分: 精币 -2 枚


作者: 西瓜大大    时间: 2021-10-15 14:47

不来点好评 没有动力
作者: 西瓜大大    时间: 2021-10-15 15:07
本帖最后由 西瓜大大 于 2021-10-15 21:13 编辑

保留层
作者: 浅浅`    时间: 2021-10-15 15:19
打赏错了,本来想打赏66的,手一抖自己差点破产了
作者: 西瓜大大    时间: 2021-10-15 15:26
浅浅` 发表于 2021-10-15 15:19
打赏错了,本来想打赏66的,手一抖自己差点破产了

哈哈哈 就是就是, 没加个功能都不好意思发出来
作者: 西瓜大大    时间: 2021-10-15 15:30
浅浅` 发表于 2021-10-15 15:19
打赏错了,本来想打赏66的,手一抖自己差点破产了

我第一次是在易语言资源网的..只飘了一个源码, 没看到大佬的原贴 2333
作者: 杨明煜    时间: 2021-10-15 20:07
感谢分享!........
作者: ouyasq    时间: 2021-10-15 23:48
新技能已get√
作者: 成神之日    时间: 2021-10-16 03:22

作者: 曜辉    时间: 2021-10-16 06:45
恩,不错的说,这个很实用啊!赞一个!
作者: 阿婆    时间: 2021-10-16 09:30
Java出身
作者: caoxiuxin    时间: 2021-10-16 10:45
牛逼啊 收藏了
作者: yxl2008    时间: 2021-10-16 16:09
感谢分享,下载学习!!!
作者: kyo9766    时间: 2021-10-16 17:07
看着有点乱,不过看效果很方便,感谢分享
作者: 树井    时间: 2021-10-16 17:14
新技能已get√
作者: 西瓜大大    时间: 2021-10-16 18:12
支持别名是很重要的特色哦, 有其他需求, 比如DataFormat操作, 强烈建议用备注进行功能增强哦
作者: weigar    时间: 2021-10-17 00:41
很厉害 学习下如何
作者: laosep123    时间: 2021-10-17 08:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: wjswzj0    时间: 2021-10-17 09:09
瞧瞧看。感谢分享
作者: 冰棍好烫啊    时间: 2021-10-17 15:26
        支持开源~!感谢分享
作者: vSpear    时间: 2021-10-18 09:49
${school_}  牛逼 `json:"ff"` 也牛逼 按照go那种导出方式也好耍
作者: xiaoshuai1994    时间: 2021-10-18 17:18
感谢分享
作者: xiaoniu1230    时间: 2021-10-18 20:36
支持开源~!感谢分享
作者: 网络注册会员    时间: 2021-10-19 13:47
支持一下
作者: cyberhalley    时间: 2021-10-19 22:53
感谢分享
作者: Azumarill    时间: 2021-10-22 10:25
新技能已get√
作者: chiljun    时间: 2021-12-25 08:28
支持开源~!感谢分享
作者: 恶魔天尊    时间: 2023-11-26 13:22
好东西
作者: 恶魔天尊    时间: 2023-11-27 09:41
不明觉厉,似乎很厉害的样子

作者: tanio5188    时间: 2024-2-16 13:59





欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4