吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1091|回复: 29
收起左侧

[求助] 最近在学习Java,有前辈知道怎么把前台传的日期封装到后台吗?

[复制链接]
KangMz 发表于 2022-3-21 00:40
本帖最后由 KangMz 于 2022-3-21 20:42 编辑

感谢大家,我好像有点搞明白了。
这个是我学习java在网上随便找的项目。这个项目里可能是为了学习的目的,把某些ID和日期用jackson搞了一下混淆,然后自定义了一些注解,用在那些混淆的字段上才行。
所以用了大家告诉我的方法一直绑定不上去。。。。
------------------------------------------------前台用的是elementUI的组件

日期选择

日期选择
c
发生的请求是这样的标准时间格式
Snipaste_2022-03-21_00-19-33.png

后台用的是springmvc,用的pojo接收数据,也加了@requestbody。其他的数据都可以正常封装,但是就是这个时间date类型绑定不了。后台接收的为null。而且控制台也没有报错。
baidu了一下,网上说在参数上加个@DateTimeFormat注解就可以了,但是试了下还是不行,后来又看到说@DateTimeFormat对于请求体是json格式的情况下无效。
又baidu了一下,看到说用
@JsonFormat注解就可以了。。然后我又试了一下,还是不行。一直是null,绑定不了。
Snipaste_2022-03-21_00-20-23.png


不过只要我把类型Date改成String的话就可以正常封装了。。。但是我就是想要封装成Date类型。
有前辈知道怎么搞嘛。。。求指教



修改成String

修改成String

debug可以接收了

debug可以接收了

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
李秀林 发表于 2022-3-21 08:16
提示: 作者被禁止或删除 内容自动屏蔽
majority 发表于 2022-3-21 08:44
玩的时候 发表于 2022-3-21 09:03
[Asm] 纯文本查看 复制代码
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
private LocalDateTime endTime;


从我项目里面拿的一段代码,可以试试
unmask 发表于 2022-3-21 09:30
请使用java.util.Date声明Date属性
ashergo 发表于 2022-3-21 09:30
什么时候 参数可以 自动转换了?      publish_time     publishTime?
xiaomache 发表于 2022-3-21 09:35
1.前端转指定格式的字符串,后端用字符串接受,在处理
2.@DateTimeFormat可以尝试使用这个注解
xiajin 发表于 2022-3-21 09:57
前端组件可以统一把时间个格式处理,虽然后端也可以
浅若夏沫丶 发表于 2022-3-21 10:09
ashergo 发表于 2022-3-21 09:30
什么时候 参数可以 自动转换了?      publish_time     publishTime?

确实,我认为也是前后端字段不一致导致的,而不是字段类型导致的,后端是可以用Date类型进行接收的,如果要求前端字段大小写也一致,后端属性上可以加个JsonProperty
Vvvvvoid 发表于 2022-3-21 10:15
日期这种的 用时间戳接受比较好处理
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 14:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表