我的Web应用程序在前端bootstrap 3.3.7,ui-bootstrap-tpls-2.0.1和angular 1.5.8中使用。在后端Java 8,tomcat 8和 提供JSON休息服务。服务器中的TimeZone是America / Sao_Paulo,前端是America / Bahia。
输入日期的Html使用uib-datepicker-popup =" dd / MM / yyyy" 对于输入时间使用
<div uib-timepicker ng-model="model.jogo.data"
hour-step="1"
minute-step="1"
show-meridian="false">
</div>
服务器上没有日期解析。从服务器获取json的角度控制器代码片段是:
var find = function (jogoId) {
Jogo.getById({id: jogoId}).$promise.then(function (result) {
$scope.model.jogo = result;
console.log($scope.model.jogo.data);
}, function (error) {
console.log(error);
});
};
在MysSql数据库中,日期保存为&#34; 2018-01-16 17:00:00&#34;。查询后,服务器返回时间戳为1516129200000的json 屏幕上显示的日期为16/01/2018 16:00(前一小时)。然后在浏览器上将日期更改为16/01/2018 17:00并提交。
发布json的角度控制器代码片段是:
$scope.salvar = function() {
console.log($scope.model.jogo.data);
$scope.model.jogo.$save().then(function (resilt) {
$location.path('/jogo/list');
});
};
在发布之前,console.log将于2018年1月16日星期二17:00:00 GMT-0300发布。然后服务器保存在数据库上。查询数据库, 日期现在存储为2018-01-16 20:00:00。
有人可以帮我解决这个时差问题吗?非常感谢