【坑】关于springMvc对JSON日期绑定,得到的日期后面多个时间的问题

本文详细解析了在SpringMvc框架中处理JSON日期绑定时遇到的问题,特别是如何避免日期后附带时间导致的数据查找错误。通过调整MyBatis映射文件,并使用Mysql的Date()函数,确保了日期数据的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

当我们翻过 解决springMvc对JSON日期绑定 眼前这座大山以后,发现并没有 IG 的荣光在等着我们,反而有个大坑在等着我们。。。。

比如博主遇到的,前台传的 JSON 中日期是 1970/01/22 ,我们想象中后台得到的应该也是 1970/01/22 格式,但是打断点发现结果确是 1970-01-22T08:00:00.000+0800 ,总是在日期后面多个时间;

这样导致博主在做精确查找的时候,总是查不到数据 ;

mybatis 的映射文件中做如下判断:

		<if test="arrivalDate != null and arrivalDate != ''">
            and ctt.arrival_date = #{arrivalDate}
        </if>

Mysql的Date()

MysqlDate() 函数,注意是 Date() 看清楚了!

该函数将只截取日期的日期部分,后面的时间部分将被抛弃;

改写 mybatis 的映射文件中做如下判断:

		<if test="arrivalDate != null and arrivalDate != ''">
            and Date(ctt.arrival_date) = Date(#{arrivalDate})
        </if>

这样拿到的日期就是我们想要的日期了;


后记

Mysql 有一堆方便好用的方法,针对 date 的,有兴趣的可以自己去查看下 Mysql的操控日期的函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值