Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.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
通过Hibernate使用TemporalType.Time时,12:00:00在MySql中存储为00:00:00_Mysql_Hibernate_Jpa - Fatal编程技术网

通过Hibernate使用TemporalType.Time时,12:00:00在MySql中存储为00:00:00

通过Hibernate使用TemporalType.Time时,12:00:00在MySql中存储为00:00:00,mysql,hibernate,jpa,Mysql,Hibernate,Jpa,我在应用程序中使用Hibernate来存储“时间”(小时、分钟、秒)。我正在使用Hibernate管理我的实体。我在我的实体中使用了JPA annotation@TemporalType.Time,如下所示: @Temporal(TemporalType.TIME) public Date getTime_out() { return time_out; } 我将从web服务请求中获取的时间存储为字符串,如下所示: DateFormat df = new Sim

我在应用程序中使用Hibernate来存储“时间”(小时、分钟、秒)。我正在使用Hibernate管理我的实体。我在我的实体中使用了JPA annotation@TemporalType.Time,如下所示:

@Temporal(TemporalType.TIME)
public Date getTime_out() {
    return time_out;
}
我将从web服务请求中获取的时间存储为字符串,如下所示:

            DateFormat df = new SimpleDateFormat("hh:mm:ss");
            Date date = null;
            try {
                date = df.parse(timeHHMM);
            } catch (ParseException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
我希望web请求采用特定的格式(我知道这可能不是正确的做法,但我只是在尝试)。将字符串转换为日期后,我在实体上设置时间并将其保存在数据库中

当我的输入为08:00:00时,它按预期存储为08:00:00。当它是13:00:00(下午1点)时,它被存储为13:00:00,这是我想要的。但是,当我的输入是12:00:00(12 PM)时,它存储为00:00:00

我是不是遗漏了什么


谢谢

您使用了错误的日期格式
hh
以am/pm格式指定一小时,因此12:00:00默认为上午12点(00:00:00)

你需要:

SimpleDateFormat("HH:mm:ss")