1

次の JSON オブジェクトがあります。

{"startDate":"30/01/2008","startPeriod":"2008","dboid":"5308204301485575800000","action":"update","grid":"variantAssigGrid","endDate":" 30/01/2011","endPeriod":"2011","機関":"5301004301485575300000"}

JSONObject.toBean を適用した後、開始日と終了日は、(json 文字列の値ではなく) 結果の Bean の現在のシステム日付に設定されます。new Date() で初期化されているようです。

日付形式を指定する方法はありますか? 私はあまり成功せずに JsonConfig クラスを調べました。

前もって感謝します!

4

1 に答える 1

1

独自のプロセッサを登録...

this.jsonConfigToJSON = new JsonConfig();
this.jsonConfigToJSON.registerJsonValueProcessor(java.util.Date.class, new JsonValueProcessor() {
    @Override
    public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
        return process(value, jsonConfig);
    }

    @Override
    public Object processArrayValue(Object value, JsonConfig jsonConfig) {
        return process(value, jsonConfig);
    }

    private Object process(Object value, JsonConfig jsonConfig) {
        // For Unix Time
        return ((Date) value).getTime() / 1000L;
    }
});
于 2012-05-28T22:40:30.990 に答える