有这么一种情况:当我们修改了一些信息,要提交数据库的时候出错了,然后就让它显示修改之前的错误。如果是我的话,很可能会重新查一遍数据库来实现。可是springmvc就不用,它有自己的回显机制。
当然前提是,这种回显机制,是针对的pojo的参数绑定的。
(1)、springmvc默认对Pojo数据进行回显
Pojo数据传入controller方法后,springmvc自动将Pojo数据放到request域,key等于Pojo类型(首字母小写)。
controller方法定义如下:
页面显示如下:
(2)、 使用注解@ModelAttribute指定Pojo回显到页面在request中的key。
(3)、@ModelAttribute还可以将方法的返回值传到页面
controller方法定义如下:
页面上可以得到items数据:
(4)、使用最简单的方法就是使用Model,不用注解的方法:
controller方法定义中有:
方法体内容,写在跳转页面代码之前,如下:
但是springmvc数据回显的前三种方法不适用于简单类型,也就是如果传的参数是类似String类型的,只能用第四种model的方式回显:
方法体中的写法如下(同样写道跳转页面的代码之前):