springMvc <form:form>标签 <form:input>标签需要注意的问题
在用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>标签需要注意的问题的更多相关文章
- [oldboy-django][2深入django]学生管理(Form)-- 编辑(设置input标签属性,设置input标签默认显示值,设置input的类型)
1 django 后台实现设置input标签属性,设置input标签默认显示值,设置input输入框类型 # Form生成html标签 a. 通过Form生成Input输入框,Form标签,以及sub ...
- 阻止form元素内的input标签回车提交表单
<form></form>标签内input元素回车会默认提交表单. 阻止回车默认提交表单: $('form').on('keydown', function (event) { ...
- 常用6种type的form表单的input标签分析及示例
<input> 标签用于搜集用户信息. 根据不同的 type 属性值,输入字段拥有很多种形式.输入字段可以是文本字段.复选框.掩码后的文本控件.单选按钮.按钮等等. 在这里博主介绍6中ty ...
- 表单相关标签之input标签
用于搜集用户信息. <input type="text" name="fname" /> 标签属性 type 规定 input 元素的类型.输入字段 ...
- BUTTON标签和INPUT标签的区别【转】
一句话概括主题:<button>具有<input type="button" ... >相同的作用但是在可操控性方面更加强大. HTML 4.01规范的Fo ...
- 在写移动端时,a标签或者input标签等 在手机上点击背后会有阴影的解决办法
a,input{-webkit-tap-highlight-color:rgba(255,0,0,0);} 被背景设置成透明的就行了
- 使用textarea标签代替input标签可以实现输入框的大小调节,自动换行,滚动条显示
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 前端与后台可能需要使用交互的表单form,input标签
前端与后台可能需要使用交互的表单标签 form表单和input标签 textarea文本域表单 select,option下拉列表表单 fieldset和legend组合表单 label标签 form ...
- 前端表单标签form 及 简单应用
今日内容 form 表单(重点) 后端框架之 flask 简介 内容详细 form 表单 1.作用 form 表单可以在前端获取用户输入的数据并发送给后端(服务端) 2.input 标签 获取用户数据 ...
- HTML(七)HTML 表单(form元素介绍,input元素的常用type类型,input元素的常用属性)
前言 表单是网页与用户的交互工具,由一个<form>元素作为容器构成,封装其他任何数量的表单控件,还有其他任何<body>元素里可用的标签 表单能够包含<input> ...
随机推荐
- linux特殊权限位suid
特殊权限位基本说明(了解): linux系统基本权限位为9位权限,但还有额外3位权限位,共12位权限: suid s(x) S 4 用户对应的权限位(用户对应的3位 ...
- Vue项目部署遇到的问题及解决方案
写在前面 Vue-Router 有两种模式,默认是 hash 模式,另外一种是 history 模式. hash:也就是地址栏里的 # 符号.比如 http://www.example/#/hello ...
- 【c学习-4】
//递归函数,调用自身 #include<stdio.h> int fibFunc(int n) { || n==){ ; }else{ )+fibFunc(n-); } } int ma ...
- linux 安装mysql5.6 yum
安装mysql: 查看mysql: rpm -qa | grep -i mysql 安装必要的环境 yum -y install gcc gcc-c++ ncurses-devel perl 查看环境 ...
- 【yii2】 yii框架如果控制器和方法都是多个单词组成应该怎样写请求链接
最近的一个项目碰到这种问题,摸索出了解决办法,故此记录下 example 如果控制器为 ShopCollect 方法为 UserList solution 请求的链接应该为 doman.com/sho ...
- 守护进程,进程安全,IPC进程间通讯,生产者消费者模型
1.守护进程(了解)2.进程安全(*****) 互斥锁 抢票案例3.IPC进程间通讯 manager queue(*****)4.生产者消费者模型 守护进程 指的也是一个进程,可以守护着另一个进程 一 ...
- python中函数的不定长参数
例1: #定义一个含有不定长参数的函数,本例第三个参数*args def sum_nums(a,b,*args): print('_'*30) print(a) print(b) print(args ...
- 点击EditText可编辑,点击其他地方不可编辑
我是在Fragment中实现的,在网上查了,有的说要回调Activity的onTouch事件,通过实验直接在Fragment中即可.如下: 我的EditText在ScrollView,因为Scroll ...
- Weblogic Linux jar包安装
环境/工具: 系统:CentOS 7 JDK:Oracle JDK fmw_12.2.1.2.0_wls.jar 0x01.新建普通用户weblogic 在Linux环境下建议使用普通用户安装,web ...
- 2.route路由配置
转自 http://www.cnblogs.com/peida/archive/2013/03/05/2943698.html Linux系统的route命令用于显示和操作IP路由表(show / m ...