FlexJson和@JSON注释 - @JSON(name ="")不起作用

ElD*_*ino 3 java annotations flexjson

我刚刚切换到FlexJson,我已经遇到了问题.

http://flexjson.sourceforge.net/上的文档章节Controlling JSON naming with @JSON说明:

对象序列化时,JSON对象上的属性名称由Java属性的名称确定.这意味着使用了getter方法的名称或字段名称.但是,有时JSON输出与Java对象使用的名称不匹配.您可以使用@JSON注释来控制它.例如:

    public class Species {
        @JSON(jsonName = "genus")
        private String type;

        private String name;

        @JSON(jsonName="species")
        public String getName() {
           return name;
        }
    }
Run Code Online (Sandbox Code Playgroud)

除了它不起作用.然后他们说:

定义@JSON.jsonName用于序列化和反序列化.

现在,当我查看http://flexjson.sourceforge.net/javadoc/index.html上的javadoc时,我可以看到有4个可选元素属于@JSON注释,这些是

包含名称objectFactory转换器

没有jsonName,就像在例子中一样.

那么我如何让这个注释工作,所以我可以有不同的java和json名称?如何定义此注释元素或使用预定义的元素name

为了澄清,我可以注释@JSON和自动完成推荐@JSON(include),但后来include无法解决...

我正在使用FlexJson 2.1,我导入了flexjson.JSON;

顺便说一下,我知道这个答案/sf/answers/621573151/,但这不是我想要的.我想使用注释.

ale*_*der 5

您需要使用FlexJson 3.2

问题是,通过开发者网站访问的最新jar有2.1版本号.但是java doc对应于3.2版.
您可以在maven存储库中找到FlexJson 3.2 jar.