javascript - java日期數據前后臺傳遞
問題描述
是這樣的,我前臺用了ant-design的控件傳入日期類型“2017-5”,后臺我用LocalDate類型接收,結果報錯了
Field error in object ’arrearsStatisticsQueryInfo’ on field ’statisticalMonth’: rejected value [2017-05]; codes [typeMismatch.arrearsStatisticsQueryInfo.statisticalMonth,typeMismatch.statisticalMonth,typeMismatch.java.time.LocalDate,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [arrearsStatisticsQueryInfo.statisticalMonth,statisticalMonth]; arguments []; default message [statisticalMonth]]; default message [Failed to convert property value of type [java.lang.String] to required type [java.time.LocalDate] for property ’statisticalMonth’; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.time.LocalDate] for value ’2017-05’; nested exception is java.time.format.DateTimeParseException: Text ’2017-05’ could not be parsed at index 2]-/api/order/arrearsStatisticsorg.springframework.validation.BindException: org.springframework.validation.BeanPropertyBindingResult: 1 errorsField error in object ’arrearsStatisticsQueryInfo’ on field ’statisticalMonth’: rejected value [2017-05]; codes [typeMismatch.arrearsStatisticsQueryInfo.statisticalMonth,typeMismatch.statisticalMonth,typeMismatch.java.time.LocalDate,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [arrearsStatisticsQueryInfo.statisticalMonth,statisticalMonth]; arguments []; default message [statisticalMonth]]; default message [Failed to convert property value of type [java.lang.String] to required type [java.time.LocalDate] for property ’statisticalMonth’; nested exception is org.springframework.core.convert.ConversionFailedException: Failed to convert from type [java.lang.String] to type [java.time.LocalDate] for value ’2017-05’; nested exception is java.time.format.DateTimeParseException: Text ’2017-05’ could not be parsed at index 2] at org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:113) ~[spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:78) ~[spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:162) ~[spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:129) ~[spring-web-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:814) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:737) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) ~[spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:969) [spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:860) [spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:622) [tomcat-embed-core-8.0.30.jar:8.0.30] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:845) [spring-webmvc-4.2.4.RELEASE.jar:4.2.4.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) [tomcat-embed-core-8.0.30.jar:8.0.30]
我的后臺怎么樣才能接收呢?其實得到2017-5-1這一天也可以
問題解答
回答1:用string接收然后轉成時間格式
回答2:謝邀, 看日志應該是String轉LocalDate類型沒有指定格式的錯誤
在statisticalMonth這個field上加上org.springframework.format.annotation.@DateTimeFormat
回答3:時間數據序列化比較麻煩,用Date對象接收也行,需要做一些配置,用string或long比較省心!
相關文章:
1. python 計算兩個時間相差的分鐘數,超過一天時計算不對2. javascript - 使用form進行頁面跳轉,但是很慢,如何加一個Loading?3. javascript - 后臺管理系統左側折疊導航欄數據較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當前菜單4. javascript - ES6規范下 repeat 函數報錯 Invalid count value5. docker-machine添加一個已有的docker主機問題6. docker-compose中volumes的問題7. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?8. javascript - html5的data屬性怎么指定一個function函數呢?9. javascript - JS 里面的 delete object.key 到底刪除了什么?10. html5 - 為什么使使用vue cli 腳手架,post-css 沒有自動對css3屬性自動添加瀏覽器前綴呢?
