,,解决java.sql.Timestamp丢失精度的问题

,,解决java.sql.Timestamp丢失精度的问题

这篇文章主要介绍了解决java.sql.Timestamp丢失精度的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

目录

java.sql.Timestamp丢失精度需要重新补偿java.sql.Timestamp类的使用1.获取当前时间2.线类型转换为时间表3 .时间戳转换为线类型

java.sql.Timestamp丢失精度

时间戳的构造函数时间戳(长时间)会丢失纳秒部分的精度

需要重新补偿

时间戳t1=时间戳。的值(' 2019-12-13 15:19:53.2202080 ');

时间戳t2=新时间戳(1576250393220208000 l/1000000 l);

T2。setnanos((int)(1576250393220208000 l % 1000000000 l));

java.sql.Timestamp类的使用

Timestamp 可以精确到小数秒 一般存储的格式:2016-12-18 11:05:36.531

时间戳可以获取当前时间,也可以把字符串装换成时间戳类型

1. 获取当前时间

@测试

public void getCurrentTime(){

//第一种

Date Date=new Date();

时间戳当前时间1=新时间戳(日期。gettime());

系统。出去。println('当前时间1:'当前时间1 ');

//第二种

时间戳当前时间2=新时间戳(系统。当前时间毫秒());

系统。出去。println('当前时间2:'当前时间2 ');

}

2.String类型转换为Timestamp

@测试

public void string convertimestamp(){

string timeStr=' 2016-12-18 11:16:33.706 ';

时间戳ts=时间戳。的值(timeStr);

系统。出去。println(ts);

}

3.Timestamp转换为String类型

@测试

public void timestampConvertString(){

简单日期格式SDF=新的简单日期格式(“yyy-MM-DD HH:MM:ss”);

时间戳当前时间=新时间戳(系统。当前时间毫秒());

string timeStr=SDF。格式(当前时间);

系统。出去。println(timeStr);

}

整个演示类的代码:

包com.demo

导入Java。SQL。时间戳;

导入Java。文字。简单的日期格式;

导入Java。util。日期;

导入org。朱尼特。测试;

公共类DemoTimestamp {

@测试

public void getCurrentTime(){

//第一种

Date Date=new Date();

时间戳当前时间1=新时间戳(日期。gettime());

系统。出去。println('当前时间1:'当前时间1 ');

//第二种

时间戳当前时间2=新时间戳(系统。当前时间毫秒());

系统。出去。println('当前时间2:'当前时间2 ');

}

@测试

public void string convertimestamp(){

string timeStr=' 2016-12-18 11:16:33.706 ';

时间戳ts=时间戳。的值(timeStr);

系统。出去。println(ts);

}

@测试

public void timestampConvertString(){

简单日期格式SDF=新的简单日期格式(“yyy-MM-DD HH:MM:ss”);

时间戳当前时间=新时间戳(系统。当前时间毫秒());

string timeStr=SDF。格式(当前时间);

系统。出去。println(timeStr);

}

}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: