在用springMVC <form:form>表单时,喜欢报的错误如下所示:

错误的Controller层的代码如下:

 @RequestMapping(value = "test.do",method = RequestMethod.POST)
public String test(Student stu,Model model){
stu = new Student();
stu.setAge(16);
stu.setName("zyh");
stu.setId(39);
// model.addAttribute("stu",stu);
return "springform";

其中BindingResult---对应于@ModelAttribute("什么什么")---->对应本例而言你应该修改为:@ModelAttribute("stu")这个stu是<form:form modelAttribute=''stu''>中的stu.

r plain target object for bean name 'stu' available as request attribute对应于:model.addAttribute("stu",实体对象);
破解错误的只要两者有一个就可以了,两者都有也是可以的。 正确的Controller的代码形式一如下加上model.addAttribute("stu",实体对象):
 @RequestMapping(value = "test.do",method = RequestMethod.POST)
public String test(Student stu,Model model){
stu = new Student();
stu.setAge(16);
stu.setName("zyh");
stu.setId(39);
model.addAttribute("stu",stu);
return "springform";
}
正确的Controller的代码形式二如下加上@ModelAttribute("stu")
 @RequestMapping( value = "test.do",method = RequestMethod.POST)
public String test(@ModelAttribute("stu") Student stu,Model model){
stu = new Student();
stu.setAge(16);
stu.setName("zyh");
stu.setId(39);
return "springform";
}

正确的Controller的代码形式三如下:即加上model.addAttribute("stu"),也加上@ModelAttribute("stu")

代码如下:

 @RequestMapping( value = "test.do",method = RequestMethod.POST)
public String test(@ModelAttribute("stu") Student stu,Model model){
stu = new Student();
stu.setAge(16);
stu.setName("zyh");
stu.setId(39);
model.addAttribute("stu",stu);
return "springform";
}

其中跳到springform.jsp的代码如下:

 <%--
Created by IntelliJ IDEA.
User: qinlinsen
Date: 2017-07-18
Time: 17:12
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form" %>
<%--使EL表达式生效的语句--%>
<%@ page isELIgnored="false" %>
<html>
<head>
<title>spring form</title>
</head>
<body>
<form:form action="/webtest/query.do" method="post" modelAttribute="stu">
<table>
<tr>
<td>
Name
</td>
<td>
<form:input path="name"/>
</td>
</tr>
<tr>
<td>
age
</td>
<td>
<form:input path="age"/>
</td>
</tr>
<tr>
<td>
id
</td>
<td>
<form:input path="id"/>
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="submit">
</td>
</tr> </table>
</form:form>
hello spring form.
</body>
</html>

Student类的代码如下:

 package com.supwisdom.domain;

 /**
* Created by qinlinsen on 2017-07-18.
*/
public class Student {
private String name;//学生姓名
private Integer age;//学生年龄
private Integer id;//学生省份证号 public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Integer getAge() {
return age;
} public void setAge(Integer age) {
this.age = age;
} public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
}
}

springMvc <form:form>标签 <form:input>标签需要注意的问题的更多相关文章

  1. [oldboy-django][2深入django]学生管理(Form)-- 编辑(设置input标签属性,设置input标签默认显示值,设置input的类型)

    1 django 后台实现设置input标签属性,设置input标签默认显示值,设置input输入框类型 # Form生成html标签 a. 通过Form生成Input输入框,Form标签,以及sub ...

  2. 阻止form元素内的input标签回车提交表单

    <form></form>标签内input元素回车会默认提交表单. 阻止回车默认提交表单: $('form').on('keydown', function (event) { ...

  3. 常用6种type的form表单的input标签分析及示例

    <input> 标签用于搜集用户信息. 根据不同的 type 属性值,输入字段拥有很多种形式.输入字段可以是文本字段.复选框.掩码后的文本控件.单选按钮.按钮等等. 在这里博主介绍6中ty ...

  4. 表单相关标签之input标签

    用于搜集用户信息. <input type="text" name="fname" /> 标签属性 type 规定 input 元素的类型.输入字段 ...

  5. BUTTON标签和INPUT标签的区别【转】

    一句话概括主题:<button>具有<input type="button" ... >相同的作用但是在可操控性方面更加强大. HTML 4.01规范的Fo ...

  6. 在写移动端时,a标签或者input标签等 在手机上点击背后会有阴影的解决办法

    a,input{-webkit-tap-highlight-color:rgba(255,0,0,0);} 被背景设置成透明的就行了

  7. 使用textarea标签代替input标签可以实现输入框的大小调节,自动换行,滚动条显示

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 前端与后台可能需要使用交互的表单form,input标签

    前端与后台可能需要使用交互的表单标签 form表单和input标签 textarea文本域表单 select,option下拉列表表单 fieldset和legend组合表单 label标签 form ...

  9. 前端表单标签form 及 简单应用

    今日内容 form 表单(重点) 后端框架之 flask 简介 内容详细 form 表单 1.作用 form 表单可以在前端获取用户输入的数据并发送给后端(服务端) 2.input 标签 获取用户数据 ...

  10. HTML(七)HTML 表单(form元素介绍,input元素的常用type类型,input元素的常用属性)

    前言 表单是网页与用户的交互工具,由一个<form>元素作为容器构成,封装其他任何数量的表单控件,还有其他任何<body>元素里可用的标签 表单能够包含<input> ...

随机推荐

  1. linux特殊权限位suid

    特殊权限位基本说明(了解): linux系统基本权限位为9位权限,但还有额外3位权限位,共12位权限: suid       s(x)     S     4     用户对应的权限位(用户对应的3位 ...

  2. Vue项目部署遇到的问题及解决方案

    写在前面 Vue-Router 有两种模式,默认是 hash 模式,另外一种是 history 模式. hash:也就是地址栏里的 # 符号.比如 http://www.example/#/hello ...

  3. 【c学习-4】

    //递归函数,调用自身 #include<stdio.h> int fibFunc(int n) { || n==){ ; }else{ )+fibFunc(n-); } } int ma ...

  4. linux 安装mysql5.6 yum

    安装mysql: 查看mysql: rpm -qa | grep -i mysql 安装必要的环境 yum -y install gcc gcc-c++ ncurses-devel perl 查看环境 ...

  5. 【yii2】 yii框架如果控制器和方法都是多个单词组成应该怎样写请求链接

    最近的一个项目碰到这种问题,摸索出了解决办法,故此记录下 example 如果控制器为 ShopCollect 方法为 UserList solution 请求的链接应该为 doman.com/sho ...

  6. 守护进程,进程安全,IPC进程间通讯,生产者消费者模型

    1.守护进程(了解)2.进程安全(*****) 互斥锁 抢票案例3.IPC进程间通讯 manager queue(*****)4.生产者消费者模型 守护进程 指的也是一个进程,可以守护着另一个进程 一 ...

  7. python中函数的不定长参数

    例1: #定义一个含有不定长参数的函数,本例第三个参数*args def sum_nums(a,b,*args): print('_'*30) print(a) print(b) print(args ...

  8. 点击EditText可编辑,点击其他地方不可编辑

    我是在Fragment中实现的,在网上查了,有的说要回调Activity的onTouch事件,通过实验直接在Fragment中即可.如下: 我的EditText在ScrollView,因为Scroll ...

  9. Weblogic Linux jar包安装

    环境/工具: 系统:CentOS 7 JDK:Oracle JDK fmw_12.2.1.2.0_wls.jar 0x01.新建普通用户weblogic 在Linux环境下建议使用普通用户安装,web ...

  10. 2.route路由配置

    转自 http://www.cnblogs.com/peida/archive/2013/03/05/2943698.html Linux系统的route命令用于显示和操作IP路由表(show / m ...