Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中将datetime转换为时间戳_Java_Hibernate_Jpa 2.0 - Fatal编程技术网

如何在java中将datetime转换为时间戳

如何在java中将datetime转换为时间戳,java,hibernate,jpa-2.0,Java,Hibernate,Jpa 2.0,论坛成员 我对java中的日期时间有一个问题。实际上,我收到的是格式为2012-02-27T01:10:10的开始日期,我想将收到的日期插入具有日期时间数据类型的数据库 实际上,我试图通过下面的代码将收到的startdate转换为datetime String sDate = jsonObject.get("StartDate").toString(); String eDate = jsonObject.get("EndDate").toString(); SimpleDateFormat s

论坛成员

我对java中的日期时间有一个问题。实际上,我收到的是格式为2012-02-27T01:10:10的开始日期,我想将收到的日期插入具有日期时间数据类型的数据库

实际上,我试图通过下面的代码将收到的startdate转换为datetime

String sDate = jsonObject.get("StartDate").toString();
String eDate = jsonObject.get("EndDate").toString();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
Date startD = sdf.format(sDate);
Date endD = sdf.format(eDate);
但是只有使用上述代码,日期才会添加到我的数据库中,比如2012-02-27 00:00:00

我也想将时间添加到我的数据库中,但当我将SimpleDataFormat更改为SimpleDataFormat(“yyyy-MM-dd HH:MM:ss”)时;什么都不管用

请建议我一些可以应用的解决方案,以便将我的时间也添加到数据库中。我使用Hibernate JPA作为持久层。

SimpleDataFormat的format()方法不返回日期类型

试试这个:

Date startDate = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss").parse(sDate);
试试这个

yyyy-MM-dd'T'HH:mm:ss

你可以这样试试

DateFormat format = new SimpleDateFormat("MMddyyHHmmss");
Date date = format.parse("022310141505");

当然,只解析日期,因为您提供给SimpleDataFormat构造函数的模式只包含日期部分!将时间部分添加到它中,它将对时间进行解析。

问题与时间戳无关
String sDate = jsonObject.get("StartDate").toString();
String eDate = jsonObject.get("EndDate").toString();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 
Date startD = sdf.format(sDate);
Timestamp startTime = new Timestamp(startD.getTime());

Date endD = sdf.format(eDate);
Timestamp endTime = new Timestamp(endD.getTime());