易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

非常强的 json自动封装到实体类 , 无限嵌套 , 支持别名 , 原创   [复制链接]

    2021-10-18 17:28:14
    模块控件源码
    易语言资源网
    2605 次浏览
    来源链接

记得很早之前看见过一个自动生产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()可以打印哦

源码草草完成, 如果你发现小工具的源码很乱, 哈哈哈哈?

你要是好评 我下个版本优化优化的

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



点我下载 (已有 66 次下载)

引用模块


源码文件名 模块文件名
实体类.e
精易模块.ec
生成类代码.e
精易模块.ec


引用支持库


源码文件名 支持库文件名 支持库标识
实体类.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0
生成类代码.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0


[错误报告]   上一篇:原创没有抄袭之随机多级目录...     下一篇:植物大战僵尸_功能分享...