查询数据库中的时间类型为 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
转载于:https://www.cnblogs.com/zfy0098/p/5515742.html