从输入类型为“ date”的日期选择器中选择日期后,将其错误地存储到数据库中。我从datepicker中选择日期,然后使用AngularJS将其发送到Spring MVCangularJS:$scope.updateProjectDetails = function(detail) { $http.post('${pageContext.request.contextPath}/api/details', detail) .then(function(response) { console.log(response) });}chrome控制台:config: {method: "POST", transformRequest: Array(1), transformResponse: Array(1), paramSerializer: ƒ, url: "/editor-application/api/details", …}data:date: 1557439200000hours: 2id: 76projectId: 531557439200000-> 5/10/2019,12:00:00 AM然后将JSON发布到MVC机制:控制器:@PostMapping(path = "/details")public ProjectDetails updateProjectDetails(@RequestBody ProjectDetails details) { details.setId(0); editorService.updateProjectDetails(details); return details;} 道:@Override@Transactionalpublic void updateProjectDetails(ProjectDetails details) { Session currentSession = sessionFactory.getCurrentSession(); currentSession.saveOrUpdate(details);}和数据库:76 2019-05-09 2 53日期始终为-1天,我知道存在时区问题,但是我该如何解决呢?
1 回答

莫回无
TA贡献1865条经验 获得超7个赞
我一直发现以下作品:
// from the server
$http.get('myDate').then(date => // date === 1557439200000
new Date(date-(new Date(date).getTimezoneOffset()*60*1000)).toISOString().slice(0,10)
)
这有点样板,但可以完成工作。
添加回答
举报
0/150
提交
取消