相关疑难解决方法(0)

Jackson enum Serializing和DeSerializer

我正在使用JAVA 1.6和Jackson 1.9.9我有一个枚举

public enum Event {
    FORGOT_PASSWORD("forgot password");

    private final String value;

    private Event(final String description) {
        this.value = description;
    }

    @JsonValue
    final String value() {
        return this.value;
    }
}
Run Code Online (Sandbox Code Playgroud)

我添加了一个@JsonValue,这似乎完成了将对象序列化为:

{"event":"forgot password"}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试反序列化时,我得到了一个

Caused by: org.codehaus.jackson.map.JsonMappingException: Can not construct instance of com.globalrelay.gas.appsjson.authportal.Event from String value 'forgot password': value not one of declared Enum instance names
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?

java enums jsonserializer jackson

208
推荐指数
11
解决办法
22万
查看次数

如何使用Jackson json注释enum字段以进行反序列化

Jackson 1.6.2 REST Web服务/ Apache Wink

如何对枚举字段进行注释以便杰克逊对其进行反序列化?

内心阶级

public enum BooleanField
{
    BOOLEAN_TRUE        { public String value() { return "1";} },
    BOOLEAN_FALSE       { public String value() { return "0";} },
Run Code Online (Sandbox Code Playgroud)

Java Bean/Request对象

BooleanField locked;
public BooleanField getLocked() {return locked;}
Run Code Online (Sandbox Code Playgroud)

杰克逊文档声明它可以通过@JsonValue/ 执行此操作@JsonCreator但不提供任何示例(如何有用!).我敢肯定他们只是不想让太多人使用他们的框架,所以他们保守这个秘密.

有人愿意溢出(java)bean吗?

java json jackson

37
推荐指数
3
解决办法
7万
查看次数

将JSON反序列化为Java枚举

我在Android上的Java中有以下枚举,我希望能够将传入的JSON字符串/对象中的整数反序列化为此枚举类型.我一直在杰克逊和GSON上点击,但我正在使用的JSON.org软件包上没有任何内容.

有没有一种简单的方法可以做到这一点,还是我需要改变JSON解码器?谢谢.

public enum ValueEnum {

    ONE(1),
    TWO(2),
    THREE(3);

    private int value;

    private ValueEnum(int value) {
        this.value = value;
    }

    public int getValue() {
        return value;
    }   
}
Run Code Online (Sandbox Code Playgroud)

java android json

7
推荐指数
1
解决办法
3209
查看次数

标签 统计

java ×3

jackson ×2

json ×2

android ×1

enums ×1

jsonserializer ×1