在用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. 在网页标题上加个logo

    只需在title标签上加个link标签即可 <link rel="icon" href="images/icon.png" > <title& ...

  2. 什么是shell 是不是什么时候都可以使用shell

    因为Shell似乎是各UNIX系统之间通用的功能,并且经过了POSIX的标准化.因此,Shell脚本只要"用心写"一次,即可应用到很多系统上.因此,之所以要使用Shell脚本是基于 ...

  3. python核心编程2 第八章 练习

    8–2. 循环. 编写一个程序, 让用户输入三个数字: (f)rom, (t)o, 和 (i)ncrement . 以 i为步长, 从 f 计数到 t , 包括 f 和 t . 例如, 如果输入的是 ...

  4. Redis------Set集合类型

    set是string类型的无序集合 类比:你的朋友不能超过2的32次方-1个元素 基本添加删除操作 取并集 取交集 取差集 注意:每个元素的各个元素不能重复 应用场合:qq好友推荐‘ TomFri 的 ...

  5. [BZOJ1927]星际竞速(费用流)

    Description 题意:给定n个点m条边的无向图,只能从编号小的到编号大的,且要求经过所有点刚好一次,而且可以从任意点瞬移到i号点并花费代价Ai,求最小代价. n<=800,m<=1 ...

  6. sap对字符串的操作

    REPLACE  替换字段内容 TRANSLATE 转换大/小写 FIND FIRST OCCURRENCE OF 查找字符串 替换字段内容 REPLACE [FIRST /ALL OCCURRENC ...

  7. springboot 入门2 开发环境与生产环境采用不同配置问题

    目开发中我们通常有两套配置信息  分别配置了我们的数据源信息等? 那么我们要如何不通过修改配置文件大量配置来实现简单的修改与配置来实现相关配置加载功能 首先springboot 有一个核心的配置文件a ...

  8. 一个python的文件对比脚本

    脚本主要用来给游戏客户端做热更的. 处理方式就是针对每个文件求其MD5值,再根据文件的目录和名字对比两个版本的MD5值,如果不一样,则这次热更就需要更新这个文件. 用法很简单. 1,生成MD5码列表 ...

  9. Mongoid Paging and Iterating Over Large Collections

    遍历数据库中的所有记录时,我们首先想到的是Model.all.each.但是,当数据量很大的时候(数万?),这就不怎么合适了,因为Model.all.each会一次性加载所有记录,并将其实例化成 Mo ...

  10. USACO Section1.5 Superprime Rib 解题报告

    sprime解题报告 —— icedream61 博客园(转载请注明出处)--------------------------------------------------------------- ...