数据库中的java.sql.Timestamp转换成Date

Posted 幸福流浪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库中的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(Timestamp.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

 

以上是关于数据库中的java.sql.Timestamp转换成Date的主要内容,如果未能解决你的问题,请参考以下文章

将 Java 字符串转换为 sql.Timestamp

使用 JOOQ 在 java.sql.Timestamp 和 java.time.Instant 之间转换时遇到问题

将 LocalDate 转换为 LocalDateTime 或 java.sql.Timestamp

将 java.time.Instant 转换为没有区域偏移的 java.sql.Timestamp

将 java.sql.Timestamp 转换为 Java 8 ZonedDateTime?

如何从 java.sql.Timestamp 转换为 java.util.Date?