在form表单中,可以通过设置相同的”name“实现动态的注入,例如username和password。
然而对于<input type="date" name="birthday">的date类型却无法注入到相同的date属性中。
原因是date属性只能接收前台传来的以"/"为分隔符的date类型,而不能接收以"-"为分隔符的date类型。
也许有朋友会看到页面上显示的效果如下,误以为传到后台的是”2019/07/01“,但实际传的却是”2019-07-01“。所以不能进行直接的注入,需要格式转换。
解决办法:一种简单的方法是通过在实体类的date属性中添加注解@DateTimeFormat(pattern = "yyyy-MM-dd"),将前台传入的数据按照pattern的格式接收并做相应的转换。
使用该注解的前提是在xml中开启了注解支持。
或者,也可以自定义类型转化器进行格式的转化。