小编Sim*_*n30的帖子

Java Spring 枚举 Jackson Serializer 用于数据插入/获取

我正在尝试在我的项目中使用枚举,并且需要使用小写而不是大写将它们保存在 mongoDB 集合中。

我有一个带有值 String 字段的枚举和用 Jackson 的@JsonCreator和注释的 setter/getters @JsonValue

public enum State {
    GREEN   ("vert"),
    ORANGE  ("orange"),
    RED     ("rouge");

    private final String value;

    State(String val) {
        this.value = val;
    }

    @JsonCreator
    public static State fromValue(String value) {
        if (value != null) {
            for (State state : values()) {
                if (state.value.equals(value)) {
                    return state;
                }
            }
        }

        throw new IllegalArgumentException("Invalid state: " + value);
    }

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

我有一个使用这个枚举的类,如下所示:

@Document(collection …
Run Code Online (Sandbox Code Playgroud)

java spring json jackson spring-mongo

5
推荐指数
0
解决办法
1205
查看次数

标签 统计

jackson ×1

java ×1

json ×1

spring ×1

spring-mongo ×1