Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说数据库中的java.sql.Timestamp转换成Date,希望能够帮助你!!!。
查询数据库中的时间类型为 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
今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。