@RequestParam <form:hidden path="id"/>

一个作业,实现录入学生信息,录入成功后要停留在当前页,之后继续修改。

思路:首先,录入肯定写dao层insert以及update方法;其次在controller层做判断,根据从页面传过来的id做判断,如果id不存在则执行insert方法,若存在则update;

很简单的一个程序,自己想了两天没想明白。在controller层,我用(<@requestparamter> (value=“id” required="false")int id)来做为可选参数的传递;然后判断id的值是否>0,如果>0,则调用dao接口的insert,否则update;

此时遇到了问题:就是如何从页面将值传过来呢?我用的是spring的form标签,将属性做为对象传给服务器,然后判断id。此时自己就晕了,这个id写在哪里呢?从哪里产生的呢?其余属性都在input,或者select标签里面用path给代替了,我这个id怎么办呢?

然后我写在了form中,提示现有id为0,spring给传了个null的错误,不行;于是就怀疑自己思路有问题;

最后问题解决了,只要加一个隐藏域的path=“id”,<form:hidden path="id">这样就可以将页面的id传给controller进行判断;首次录入id肯定为0,但是录入成功后,取出的id就好>0,这样就可以实现了。

总结:传值要有传值的位置,path都没写,怎么

猜你喜欢

转载自yu-duo.iteye.com/blog/1668964