讲解“SpringMVC实现数据绑定及表单标签”的完整攻略如下:
讲解“SpringMVC实现数据绑定及表单标签”的完整攻略如下:
1. 数据绑定
SpringMVC通过数据绑定将请求参数映射到控制器方法的入参中。实现数据绑定需要在控制器方法入参前面添加@ModelAttribute注解,例如:
@RequestMapping(value="/user")
public String showUserInfo(@ModelAttribute("username") String username) {
// ...
}
通过上面的代码,SpringMVC会将请求参数中名为"username"的参数值绑定到控制器方法的"username"参数上。
除了简单类型外,SpringMVC还支持将表单参数映射到JavaBean对象中:
@RequestMapping(value="/user")
public String showUserInfo(@ModelAttribute("user") User user) {
// ...
}
通过上面的代码,SpringMVC会将请求参数中名为"user"的参数映射到User对象的属性中。
2. 表单标签
SpringMVC提供了丰富的表单标签,方便开发者在前端页面构建表单。常见的表单标签有:
2.1.
<form:form method="POST" action="${pageContext.request.contextPath}/user">
<!-- 表单内容 -->
</form:form>
上面的代码将生成一个POST请求的表单,提交地址为"/user"。
2.2.
<form:input path="username" />
上面的代码将生成一个name属性为"username"的文本框,文本框的值将与User对象的username属性绑定。
2.3.
<form:checkbox path="sports" value="basketball" />篮球
<form:checkbox path="sports" value="football" />足球
<form:checkbox path="sports" value="tennis" />网球
上面的代码将生成一个多选复选框,复选框的值将与User对象的sports属性绑定。
示例:
@RequestMapping(value="/user", method=RequestMethod.POST)
public String showUserInfo(@ModelAttribute("user") User user) {
// 输出绑定的User对象内容,检验是否成功绑定
System.out.println(user.toString());
return "result";
}
<form:form method="POST" action="${pageContext.request.contextPath}/user">
<label>用户名:</label>
<form:input path="username" /><br/>
<label>密码:</label>
<form:input path="password" /><br/>
<label>爱好(多选):</label>
<form:checkbox path="hobbies" value="basketball" />篮球
<form:checkbox path="hobbies" value="football" />足球
<form:checkbox path="hobbies" value="tennis" />网球
<br/><br/>
<input type="submit" value="提交" />
</form:form>
上面的示例代码将生成一个包含用户名、密码、爱好多选框的表单,提交后将把数据绑定到User对象中,并在控制器方法中输出User对象的内容。
以上就是关于“SpringMVC实现数据绑定及表单标签”的完整攻略,希望能对你有所帮助。
本文标题为:SpringMVC实现数据绑定及表单标签
基础教程推荐
- InputStream数据结构示例解析 2023-06-30
- java+jsp+mysql电影订票管理系统,特别适合做期末作业和毕业设计 2023-10-31
- IDEA配置Maven的超详细步骤 2023-04-17
- spring-boot-maven-plugin 配置有啥用 2023-04-11
- Redis实现商品秒杀功能页面流程 2023-05-18
- 详解如何继承Mybatis中Mapper.xml文件 2023-06-05
- Jsp敏感词过滤的示例代码 2023-07-30
- Mybatis-Plus实现多主键批量保存及更新详情 2023-05-24
- 一文带你搞懂Java单例模式 2023-07-01
- Java Swing实现扫雷源码 2022-12-07
