Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.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 使用spring mvc在服务器上保存日期_Java_Spring_Jsp_Date_Timezone - Fatal编程技术网

Java 使用spring mvc在服务器上保存日期

Java 使用spring mvc在服务器上保存日期,java,spring,jsp,date,timezone,Java,Spring,Jsp,Date,Timezone,这应该很简单,但就我个人而言,我无法让它工作。客户端向服务器输入日期和时间。然后我根据他的时区(我已经有了)将该日期保存在服务器上,然后根据他的时区将其显示给客户端。我正在使用SpringMVC和hibernate 对于服务器代码,我将执行以下操作: GregorianCalendar calendar = new GregorianCalendar(); GregorianCalendar timeCalendar = new Grego

这应该很简单,但就我个人而言,我无法让它工作。客户端向服务器输入日期和时间。然后我根据他的时区(我已经有了)将该日期保存在服务器上,然后根据他的时区将其显示给客户端。我正在使用SpringMVC和hibernate

对于服务器代码,我将执行以下操作:

                GregorianCalendar calendar = new GregorianCalendar();
            GregorianCalendar timeCalendar = new GregorianCalendar();
            TimeZone tz = TimeZone.getTimeZone(user.getTimezone());
            calendar.setTimeZone(tz);
            calendar.setTime(entryDate);
            timeCalendar.setTime(entryTime);

            timeCalendar.setTimeZone(tz);
            calendar.set(Calendar.HOUR_OF_DAY, timeCalendar.get(Calendar.HOUR_OF_DAY));
            calendar.set(Calendar.MINUTE, timeCalendar.get(Calendar.MINUTE));
我从日历中检索日期对象并保存它

在jsp中,我执行以下操作:

<span class=""><fmt:formatDate timeZone="${timezone}" pattern="HH:mm a" value="${entry.entryDate}" /></span>


我总是得到一个或两个小时的不同,它应该是。我知道我错过了一些东西。我就是不能把我的头绕过去。我觉得我计算得太多了。

你能提供更多的细节吗,比如从哪个时区到哪个时区?还有变量entryData和entryTime,您要传递的值是什么。我相信今天,在全球范围内,日光节约的时间发生了变化,所以我相信结果是正确的,而你们并没有想到这一点。看看这个,带有java日历和日期的时区有点混乱。我不确定您是如何获得entryDate和entryTime的-客户端是否存在转换问题?此外,这里不需要使用两个日历变量,这会使它变得非常复杂。记录代码中的值,这样应该更清晰。