实际应用中,列表中的单条记录的修改,可能需要传很多对象参数到后台服务器,Spring MVC表单标签<form:> 提供了一种简洁的提交方式。

 <form id="form1" class="form-horizontal chukong_form" method="post" action="${ctx}/channel/sdkversion/postedit.do">
<form:hidden path="sdkversion.id" />
<div class="form-group">
<label class="col-sm-3 control-label">版本号</label>
<div class="col-sm-6">
<form:input path="sdkversion.sdkVersion" value="${sdkversion.sdkVersion}" class="form-control phone1" id="m_version" />
</div>
</div> <div class="form-group">
<label class="col-sm-3 control-label">加密密钥</label>
<div class="col-sm-6">
<form:input path="sdkversion.itemMapperKey" value="${sdkversion.itemMapperKey}" class="form-control phone1" id="m_itemkey" />
</div>
</div> <div class="form-group">
<label class="col-sm-3 control-label">版本描述</label>
<div class="col-sm-6">
<form:input path="sdkversion.desc" value="${sdkversion.desc}" class="form-control phone1" id="m_desc" />
</div>
</div> <div class="modal-footer" style="border:none;">
<div class="col-sm-offset-2 col-sm-6">
<!-- <span style="margin-right: 30px;" class='label alert-warning' id="msgflag"></span> -->
<button type="button" class="btn searchB" id="btn_submit"
data-loading-text="Loading..." autocomplete="off">提&nbsp;&nbsp;交</button>
<a class="btn searchA" href="javascript:history.go(-1);" style="margin:2px 1.6% 0;">返&nbsp;&nbsp;回</a>
</div>
</div>
</form>

form标签
    和使用任何JSP扩展标签一样,在使用Spring表单标签之前,你必须在JSP页面中添加一行引用Spring表单标签的声明,如下所示:

服务器端

 1 @RequestMapping(value = "/sdkversion/postedit", method = RequestMethod.POST)
2 public String sdkVersionModify(final HttpServletRequest request,
3 final Model model, final SdkVersion sdkversion) {
4 sdkversion.setModifyDatetime(new Date());
5 final User currentUser = SessionManager.getCurrentUser(request.getSession());
6 sdkversion.setModifyBy(new Long(currentUser.getId()).intValue());
7 try {
8 sdkversionFacade.sdkVersionModify(sdkversion);
9 } catch (AppException appEx) {
10 DEBUG_LOGGER.error("edit SdkVersion fail.", appEx);
11 throw new SystemException(appEx);
12 } catch (Exception ex) {
13 final String error = "edit SdkVersion fail.";
14 DEBUG_LOGGER.error(error, ex);
15 throw new SystemException(error, ex);
16 }
17
18 return "redirect:/channel/sdkversion/query";
19 }

其中,form表单中的SdkVersion 对象的值以对象的形式传入后台进行操作,不用按原始的以表单中的name获取各个属性值,代码简洁,容易操作。

另外:

1.复选框标签的使用

1    兴趣:
2 <form:checkbox path="favorites" value="1"/>篮球
3 <form:checkbox path="favorites" value="2"/>足球
4 <form:checkbox path="favorites" value="3"/>阅读
5 <form:checkbox path="favorites" value="4"/>旅游

2.输入框标签的使用

<form:input path="sdkversion.itemMapperKey" value="${sdkversion.itemMapperKey}" />

3.单选框标签的使用

1  性 别:<form:radiobutton path="obj.sex" value="0"/>男
2 <form:radiobutton path="obj.sex" value="1"/>女

4.下拉框标签的使用

1 <form:select path="obj.city">
2 <form:option value="" label="--请选择--"/> ①提示性的选项
3 <form:options items="${cityMap}" itemValue="key" itemLabel="value"/>②真实的选项数据
4 </form:select>

Spring MVC表单提交的更多相关文章

  1. [Spring MVC] - 表单提交

    Spring MVC自带的表单标签比较简单,很多时候需要借助EL和JSTL来完成. 下面是一个比较简单的表单提交页面功能: 1.User model package com.my.controller ...

  2. Spring MVC表单提交中文数据出现乱码

    http://jiessiedyh.iteye.com/blog/475541 http://bigcat.easymorse.com/?p=474 Spring MVC 教程,快速入门,深入分析 h ...

  3. spring mvc 表单提交 乱码

    1.在web.xml添加过滤器: <filter> <filter-name>SpringCharacterEncoding</filter-name> <f ...

  4. [Spring MVC] 表单提交日期转换问题,比如可能导致封装实体类时400错误

    三种格式的InitBinder @InitBinder//https://stackoverflow.com/questions/20616319/the-request-sent-by-the-cl ...

  5. Spring MVC - 表单处理示例

    环境搭建 环境: Intellij IDEA Spring MVC 完整的项目文件结构如下所示: Student.java package com.ktao.controller; public cl ...

  6. Spring MVC表单处理

    以下示例演示如何编写一个简单的基于Web的应用程序,它使用Spring Web MVC框架使用HTML表单. 首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework ...

  7. 使用Spring MVC表单标(转)

    概述     在低版本的Spring中,你必须通过JSTL或<spring:bind>将表单对象绑定到HTML表单页面中,对于习惯了Struts表单标签的开发者来说,Spring MVC的 ...

  8. Spring MVC表单标签

    从Spring 2.0开始,Spring MVC开始全面支持表单标签,通过Spring MVC表单标签,我们可以很容易地将控制器相关的表单对象绑定到HTML表单元素中. form标签     和使用任 ...

  9. spring mvc表单form值自动传到javabean-注解@ModelAttribute

    直接通过Form Bean进行表单可以简化表单提交的处理,特别是对于复杂表单,过于简单的表单就不建议了,因为毕竟需要额外创建一个Form Bean.前段时间项目中有一个比较复杂的表单,有多层次而且涉及 ...

随机推荐

  1. Jmeter+Ant+Jenkins接口自动化测试框架搭建

    前言 软件开发的V模型大家都不陌生,其中测试阶段分为单元测试→功能测试→系统测试→验收测试.其中单元测试一般由开发同学们自己完成,大部分测试具体实施(这里不包括用例设计)是从单体功能测试开始着手的. ...

  2. Android笔记之自定义的RadioGroup、RadioButton,以及View实例状态的保存与恢复

    效果图 activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLay ...

  3. You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

    [root@localhost dreamstart]# composer installLoading composer repositories with package informationI ...

  4. Java之线程池(一)

    在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统 ...

  5. linux 6-find,xargs

    十六. 文件查找命令find:     下面给出find命令的主要应用示例:     /> ls -l     #列出当前目录下所包含的测试文件     -rw-r--r--. 1 root r ...

  6. Data Structure Array: Maximum sum such that no two elements are adjacent

    http://www.geeksforgeeks.org/maximum-sum-such-that-no-two-elements-are-adjacent/ #include <iostre ...

  7. nodejs模块之event

    event模块是nodejs系统中十分重要的一个模块,使用该模块我们可以实现事件的绑定的触发,为什么我们需要这个模块呢,因为nodejs是单线程异步的. 一.什么是单线程异步: 我们可以从JavaSc ...

  8. [原创]java WEB学习笔记17:关于中文乱码的问题 和 tomcat在eclipse中起动成功,主页却打不开

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  9. python 3 面向过程编程

    python 3 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就像设计好一条工业流水线,是一种机械式的思维方式. 1.优点:程序结构清晰,可以把复杂的问题简单化,流程 ...

  10. 总结:iview(基于vue.js的开源ui组件)学习的一些坑

    1.要改变组件的样式 找到这个组件的class名,然后覆盖样式. 举例:修改select框,显示圆角.只需给找到类名并写样 .ivu-select-selection{ border-radius:1 ...