使用表单提交遇到date类型转换不一致问题

在表单提交时,Spring后端接收到的数据默认为String类型,导致与Date类型实体字段不匹配而报错。解决方案包括:1)单独处理数据类型转换,将String转为Date;2)使用@ModelAttribute注解并配合@InitBinder进行数据绑定,确保Date到String的转换。

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

1、在使用表单提交,后台接收来的数据都是String类型的,一般情况下spring就会自动进行前后台的自动匹配,但是数据类型不一致会报错,说前台传过来的数据不合法,如果实体类你写的日期是Date类型,或者使用逆向工程自动生成的一般都是Date类型的数据,就会报错,

Unable to convert value "" from type 'java.lang.String' to type 'java.util.Date'; nested exception is java.lang.IllegalArgumentException]

一、类型转换:

1、如果是后台单个接收数据可以直接更改数据类型即可
在这里插入图片描述
2、如果 你为了省事使用的是@ModelAttribute 注解方式,就需要在控制器中写数据转换,一定不要忘了注解 @InitBinder,需要加在相关的Controller里面

在这里插入图片描述

 @InitBinder
	public void initBinder(WebDataBinder cdate
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值