簡體   English   中英

使用ORMlite將空列值映射到Java枚舉

[英]Empty column values mapping to java enum using ORMlite

如何將空值或未知值映射到Java中的enum 我正在使用Ormlite。

@DatabaseField(canBeNull=false, columnName=COLUMN_NAME_DEVICE_TYPE,  
     dataType=DataType.ENUM_STRING)
private DeviceType deviceType;

這是我的枚舉

public enum DeviceType {

    iPhone, iPad, Android,
    OSX, Windows, Windows8,
    WP7, WP8, Blackberry,
    Browser, Facebook, Unknown;

    @JsonCreator
    public static DeviceType parse(String s) {
        for (DeviceType t : values()) {
            if (t.name().toLowerCase().equals(s)) {
                return t;
            }
        }
        return Unknown;
    }

    @JsonValue
    @Override
    public String toString() {
        return name().toLowerCase();
    }
}

我總是收到以下異常:

原因:java.sql.SQLException:無法獲取字段FieldType:name = deviceType,class = MyEntity的枚舉值”

看一下數據庫中的數據。 我猜這行有空字符串”,沒有空值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM