查詢數據庫中的時間類型為 java.sql.Timestamp
保存在json中需要格式化
自定義工具類 DateJsonValueProcessor
1 package com.rom.util; 2 3 import java.text.SimpleDateFormat; 4 5 import java.util.Date; 6 import java.util.Locale; 7 8 import net.sf.json.JsonConfig; 9 import net.sf.json.processors.JsonValueProcessor; 10 11 public class DateJsonValueProcessor implements JsonValueProcessor { 12 13 private String datePattern = "yyyy-MM-dd"; 14 15 public DateJsonValueProcessor() { 16 super(); 17 } 18 19 public DateJsonValueProcessor(String format) { 20 super(); 21 this.datePattern = format; 22 } 23 24 public Object processArrayValue(Object value, JsonConfig jsonConfig) { 25 return process(value); 26 } 27 28 public Object processObjectValue(String key, Object value, 29 JsonConfig jsonConfig) { 30 return process(value); 31 } 32 33 private Object process(Object value) { 34 try { 35 if(value instanceof Date){ 36 SimpleDateFormat sdf = new SimpleDateFormat(datePattern, Locale.UK); 37 return sdf.format((Date) value); 38 } 39 return ""; 40 } catch (Exception e) { 41 return ""; 42 } 43 44 } 45 46 public String getDatePattern() { 47 return datePattern; 48 } 49 50 public void setDatePattern(String pDatePattern) { 51 datePattern = pDatePattern; 52 } 53 54 }
java中的instanceof 運算符是用來在運行時指出對象是否是特定類的一個實例。instanceof通過返回一個布爾值來指出,這個對象是否是這個特定類或者是它的子類的一個實例。
用法:
result = object instanceof class
參數:
Result:布爾類型。
Object:必選項。任意對象表達式。
Class:必選項。任意已定義的對象類。
說明:
如果 object 是 class 的一個實例,則 instanceof 運算符返回 true。如果 object 不是指定類的一個實例,或者 object 是 null,則返回 false。
在保存json數據的同事調用 JsonConfig
1 JsonConfig jsonConfig = new JsonConfig(); 2 jsonConfig.registerJsonValueProcessor(java.sql.Date.class, new DateJsonValueProcessor("yyyy-MM-dd")); 3 JSONArray jo = JSONArray.fromObject(list,jsonConfig);
程序自動將格式裝換成java.util.Date的形式
如 yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss