我不确定“Serialize”是否是正确的单词,但是我想创建一些这样做的东西,现在:
private interface DummySerializer {
default Map<String, String> serialize() {
// Creates a Key/Value pair for all objects using the @DSerialize annotation.
}
}
class DummyClass implements DummySerializer {
private int hello = 0;
@DSerialize private int world = 1;
}
Map<String, String> = new DummyClass().serialize();
// Print key/value pairs
此示例将打印出
world, 1
作为变量的名称是“world”,其中包含@DSerialize
注释,变量的值为1.
我怎么能做这样的事情?
甚至可以更进一步并获得变量类型,例如“Integer”或“Float”
答案 0 :(得分:0)
看一下messagepack - 它是一个用于序列化的跨平台协议(他们称之为二进制json)。 java实现基于注释。作为一个很好的特性,您可以序列化一个java对象,然后将其反序列化为一个不同编程语言的对象。
严格来说,这不是你想要的,我猜,但它能够做到这一点 http://msgpack.org/(java example here)