-
Java Proxy
Java Proxy
代码实现
UserService.java
public interface UserService {
/**
* 查询所有
*/
void queryAll();
}
UserServiceImpl.java
public class UserServiceImpl implements UserService {...
2018-07-20 01:30:27 |
Java
-
Gson/fastjson/Jackson json 反序列化/序列化 如何指定字段的名称
场景
java 一般命名是驼峰。比如 userName
发现和其他语言对接时,可能对方风格可能不同,有的是 user_name。
那么,怎么可以让不同的 json 和 java 对象的字段映射序列化+反序列化呢?
不同 json 库的操作方式
在 Java 中使用 JSON 库(如 Gson 或 Jackson)来指定注解的名字,那么通常的做法是在类或字段上使用注解来指定 JSON...
2018-07-20 01:24:03 |
Java
-
Json Path-另一种解析 json 的方式 jsonpath
场景
以前工作中,习惯于将对象转换为 json。并一直感觉这种转换非常的方便。
因为借助 fastjson, gjson, jackson 等工具就是一个方法就搞定。
以前写一些数据的抓取,我也会写一大堆代码,去构建这个对象。
后来知道有 mongo 这种文档型数据库,觉得也挺方便。
但是 xml 有 xmlPath, 我为什么一直都没有想到 json 有 json path 呢?...
2018-07-20 01:24:03 |
Java
-
Json 之 MessagePack
MessagePack
MessagePack 是一种高效的二进制序列化格式。
它可以像 JSON 一样在多种语言之间交换数据。
但它更快且更小。
小整数被编码成一个字节,典型的短字符串只需要一个额外的字节来存储字符串本身。
特性
支持语言丰富
压缩比例
原始大小为 27 byte
{"compact":true,"schema":0}
压缩后:
18 byt...
2018-07-20 01:24:03 |
Java
-
Json 之 Kryo
Kryo
Kryo 是一种用于 Java 的二进制序列化和克隆工具:快速、高效、自动化。
Kryo 是一个用于 Java 的快速高效的二进制对象图序列化框架。
该项目的目标是高速度、低大小和易于使用的 API。
该项目在任何需要持久化对象的时候都非常有用,无论是写入文件、数据库还是通过网络传输。
深度拷贝
Kryo 还可以执行自动深拷贝和浅拷贝/克隆。
这是从对象到对象的直接拷...
2018-07-20 01:24:03 |
Java
-
Json 之 Jboss Marshaling
关于 JBoss Marshalling
JBoss Marshalling 是一个替代的序列化 API,修复了 JDK 序列化 API 中的许多问题,同时完全兼容 java.io.Serializable 及其相关接口,并添加了多个可调参数和附加功能。
所有这些功能都可以通过工厂配置进行插拔(例如外部化器、类/实例查找表、类解析和对象替换)。
特性
该框架的灵感来自对标准Objec...
2018-07-20 01:24:03 |
Java
-
Json 之 Hession
Hessian
概念
Hessian是一个动态类型,二进制序列化,也是网络协议为了对象的定向传输。
优点
Hessian二进制的网络协议使不需要引入大型框架下就可以使用,并且不需要学习其它的入门的协议。
因为它是二进制协议,它更擅长于发送二进制数据,而不需要引入其它附件去扩展它的协议。
Hessian支持很多种语言,例如Java,Flash/Flex,python,c++,.ne...
2018-07-20 01:24:03 |
Java
-
Google Protocol Buffer
Google Protocol Buffer
Protocol Buffers 是 Google 的一种语言无关、平台无关的可扩展机制,用于序列化结构化数据。
优点
protobuf是google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,其最大的特点是基于二进制,因此比统的 XML表示高效短小得多。
虽然是二进制数据格式,但并没有因此变得复杂,可以很方便的对...
2018-07-20 01:24:03 |
Tool