数据库中的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

时间: 2024-10-23 22:40:31

数据库中的java.sql.Timestamp转换成Date的相关文章

JAVA CST时间 转换成Date

Mybatis中处理Oracle时间类型是个比较麻烦的问题,特别是需要用到时间做比较的,可参考以下代码与思路: 格式化CST时间 SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US); CST时间转换成字符串,实体中为date类型的toString()转换即可 String dateStr = "Mon Sep 02 00:00:00 CST 2019&qu

java时间String转换成date型及日期相差天数计算

public static void main(String[] args) throws ParseException {        String strTime1 = "2015-03-01 15:12:25";        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd hh:MM:ss");        Date date1 = formatter.parse(strTime

JAVA中怎么将string转换成date

比如说String date="1987-10-10";我想给他转换成DATE类型的,而且输出后还是"1987-10-10"这个格式的,不是带英文的那些东西 String -> Date 1 2 3 java.text.SimpleDateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd"); String s= "2011-07-09 ";  Date date 

weblogic11_64下的java.lang.ClassCastException: java.sql.Timestamp cannot be cast to java.sql.Date

项目需要切换服务器,从server2003切换到server2008上,新环境用的weblogic11_64.Oracle11g 项目部署运行之后,其他一切正常,只有涉及到查询date类型的数据库字段时,会报以下错误: java.lang.ClassCastException: java.sql.Timestamp cannot be cast to java.sql.Date 按照一般思路,这个异常,是代码中存在类型的强制转换,只要把强制转换的地方修改成合理的类型转换逻辑就可以了. 但是考虑到

java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和联系

参考:链接 在Web开发中,避免不了对日期的操作,常用的关于时间的类有这么几个: java.util.Date.java.sql.Date.java.sql.Time.java.sql.Timestamp,这几个类在JDK的定义如下所示: java.lang.Object -.|__java.util.Date ---.|__java.sql.Date/java.sql.Timestamp/java.sql.Time -.|__java.security.Timestamp java.util.

java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp小结

final SimpleDateFormat sdfDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", Locale.US);//dd/MM/yyyy final Date now = new Date(); System.out.println(now); final String strDate = sdfDate.format(now); System.out.println(strDate); final Timesta

java.util.Date 和Java.sql.Date、java.sql.Time、java.sql.Timestamp的互换

1.sql时间类型转util时间类型 原理:java.sql.Date.java.sql.Time.java.sql.Timestamp三个类都是java.util.Date的子类,故根据多态的设计原理,父类引用指向子类对象,可以直接转换. 即: java.util.Date uDate = new java.sql.Date(0); 或: java.util.Date uDate = new java.sql.Time(0); 或: java.util.Date uDate = new jav

java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和总结 转

java.util.Date.java.sql.Date.java.sql.Time.java.sql.Timestamp区别和总结 java.lang.Object ....|__java.util.Date ..........|__java.sql.Date/java.sql.Timestamp /java.sql.Time [父类]java.util.Date日期格式为:年月日时分秒 [子类]java.sql.Date日期格式为:年月日[只存储日期数据不存储时间数据] [子类]java.

解决Apache CXF 不支持传递java.sql.Timestamp和java.util.HashMap类型问题

在项目中使用Apache开源的Services Framework CXF来发布WebService,CXF能够很简洁与Spring Framework 集成在一起,在发布WebService的过程中,发布的接口的入参有些类型支持不是很好,比如Timestamp和Map.这个时候我们就需要编写一些适配来实行类型转换. TimestampAdapter.java package com.loongtao.general.crawler.webservice.utils; import java.s