Snack3 3.2 发布,轻量的 Json+Jsonpath 框架
Snack3 是一个轻量的 JSON + Jsonpath 框架。
借鉴了 Javascript 所有变量由 var 申明,及 Xml dom 一切都是 Node 的设计。其下一切数据都以ONode表示,ONode也即 One node 之意,代表任何类型,也可以转换为任何类型。
- 强调文档树的操控和构建能力
- 做为中间媒体,方便不同格式互转
- 高性能Json path查询(兼容性和性能很赞)
- 支持序列化、反序列化
- 基于 无参构造函数 + 字段 操作实现(反序列化时不会有触发危险动作的风险)
<dependency> <groupId>org.noear</groupId> <artifactId>snack3</artifactId> <version>3.2.7</version> </dependency>
本次累计更新:
- 增加自定义编码与解码支持
public class DemoTest { public void test(UserDto user) { Options options = Options.def(); options.addEncoder(Date.class, (data, node)->{ node.val().setNumber(data.getTimes()); }); ONode oNode = ONode.loadObj(user, options); } }
- 增加 @ONodeAttr 注解,取代旧的 @NodeName
public class UserModel { public int id; @ONodeAttr(serialize = false) public String name; @ONodeAttr(deserialize = false) public String note; @ONodeAttr(format = "yyyyMMdd") public Date date; }
- 增加更复杂的泛型传导
@lombok.Data public class Data<X> { private List<X> content; private X obj; private int pageNum; private int pageSize; private int totalElements; private int pages; } @lombok.Data public class House { private String sn; private String dver_type; private String data_status; private String created_by; private String updated_by; private String updated_date; } @lombok.Data public class Result<T> { private int code; private Data<T> data; } Result<House> result = ONode.deserialize(json, new Result<House>() {}.getClass());
- 增加对成员类的反序列化支持
public class Server { public static class One{ public int id; public String name; } } Server.One one = ONode.deserialize(json, Server.One.class);
- 增加接口 ONode::getRawString()
- 增加接口 ONode::getRawNumber()
- 增加接口 ONode::getRawBoolean()
- 增加接口 ONode::getRawDate()
- 增加接口 Options::getFeatures()
- 增加接口 ONode::options(ops->...);
- 调整接口 ONode::get(key) ,不再自动为文档树添加节点;如有需要改用 ONode::getOrNew(key)
- 等等

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
stronghop 开源跨境商城 v1.4.5 发布,修复一些问题
stongshop v1.4.5 更新内容如下: 修复安装报错问题 升级 laravel-strongadmin 到 v1.6.3 (修复添加账号500错误) StrongShop 简介 StrongShop 是一款免费开源的跨境电商商城网站。 StrongShop 是基于 PHP Laravel 框架开发的一款 Web 商城系统。 开发缘起是公司的一套跨境商城系统,原先公司使用的系统是基于 Ecshop 二次开发的,后来因为漏洞太多甚至还被黑客盗过数据库,于是基于 Laravel框架 重新开发了一套。 然后觉得现在不都流行开源嘛,于是兴起学着开源 (●ˇ∀ˇ●)。感兴趣的小伙伴可以一起交流学习! 系统特点 基于 PHP Laravel6 框架开发 遵循 BSD-3-Clause 开源协议,免费商用 支持多语言,多货币,多种国际配送方式 PayPal 支付,国际信用卡支付 PC Web 端和移动端自适应 架构特点 该项目在没有对 laravel 基础框架进行改写的情况下充分使用了 laravel 的 中间件、事件系统、artisan 命令行、模型关联 等特性,这使得项目架构有着更好的解...
- 下一篇
Micronaut 3.2.4 发布,基于 JVM 的微服务框架
Micronaut 3.2.4 已发布,主要更新内容: 升级 micronaut-security 至 3.2.1(#6704) 删除验证模块的冗余服务提供者定义 (#6703) 升级 clientBasics.adoc(#6695) 使用 java.util.function.Supplier,而不是直接初始化 LOGGER(#6692) 修复部分拼写错误(#6700) 将默认验证上下文中先前验证的消息重置为 null@agugan(#6607) 嵌套 pojos 上的自定义验证器在从 2.x 到 3.x 的分支上缺少合并(#6686) 升级 link(#6685) 升级 micronaut-flyway 至 5.0.2(#6680) 升级 micronaut-liquibase 至 5.0.1(#6679) 升级 micronaut-data 至 3.2.2(#6675) [core] 升级 3.2.x 分支的通用文件(#6603) build: log4j2 从 2.16.0 升级到 2.17.0 (#6671) Bugfix 修复巨大请求的 ignoreBodyRead 问题(...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2全家桶,快速入门学习开发网站教程
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8编译安装MySQL8.0.19
- Docker安装Oracle12C,快速搭建Oracle学习环境