在进行后台项目时,需要实现一个对已有产品进行修改的操作。这块的实现,网页表单我继续使用了产品添加的表单,在写好代码修改时遇到如题所示的错误。
一共出现过两次类似的错误,其一是: Could not set parameters for mapping: ParameterMapping{property='id',
其二是: Could not set parameters for mapping: ParameterMapping{property='time',
解决方案
两个bug的出现,本质上的原因都是一样的,即jsp页面传给后台的值没有跟后台需要的值对应上,可能是数据名称、或者数据类型。
第一个bug的出现是因为我的表单中,没有对应的名称为id的项,所以导致product类在进行controller中无法进行封装,进而导致在Service层,DAO层无法进行操作。检查代码后发现我的产品id,name却是productNum
。该项修改为id后,这个报错消失。
第二个bug是数据类型没对应上。在一开始我在value
属性处填入的值是Date
类型,但是在数据传入数据库时,需要的字符串类型,所以修改value属性值为"${product.departureTimeStr}"
,即可正常进行修改操作。
进行测试:
正常运行