form表单—3种参数

共有三种形式

form表单中的元素的name属性值 和 后台对应方法中的参数名保持一致。
(1) 参数是基本类型, name属性值和参数名保持一致
(2)后台方法的参数是自定义实体类,如Person。name属性值和实体类的属性名保持一致
(3)后台方法的参数是自定义实体类,而且实体类的一个属性是另一个自定义实体类。name属性值和实体类的属性名的属性名保持一致。比如name=area.id

第1种:提交基本类型的参数到后台

form表单中的元素的name属性值 和 后台对应方法中的参数名保持一致
html代码

    <form id="editForm" action="app/edit/destination" method='POST'>
        <div>
            名称<input id="getName" name="param1" />
        </div>

        <div>
            id<input id="getAreaId" name="param2" />
        </div>       
        <input type="submit" value="提交" />
    </form>

java代码

@ResponseBody
@RequestMapping(value = "app/edit/destination", method = RequestMethod.POST)
public void editDestination(Long param1, String param2) {
    //处理参数
}

第2种:传递一个自定义实体类对象到后台,实体类的字段都是基本类型

新建实体类Class

public class Class {
    private int id;
    private String name;        
}

html代码

    <form id="editForm" action="app/edit/destination" method='POST'>
        <div>
            名称<input id="getName" name="id" />
        </div>

        <div>
            id<input id="getAreaId" name="name" />
        </div>       
        <input type="submit" value="提交" />
    </form>

java代码

@ResponseBody
@RequestMapping(value = "app/edit/destination", method = RequestMethod.POST)
public void editDestination(Class class) {
    //处理参数
}

第3种:传递一个自定义实体类对象到后台,实体类的某个字段是另一个自定义实体类

新建实体类Person,包含字段name,age,sex,myclass


public class Person {
    public String name; //(1)姓名
    private int age;//(2)年龄
    private int sex;
    private Class myclass; //(4)自定义实体类      
}

html代码

    <form id="editForm" action="app/edit/destination" method='POST'>
     <div>
        <input name="name" value="smx" />
    </div>
    <div>
        <input name="age" value="23" />
    </div>  
    <div>
        <select name="sex">
            <option value="0"></option>
            <option value="1"></option>
        </select>
    </div>

    <!--  -->
    <div>
        <input   name="myclass.name"   value="1年级"/>
    </div>
    <div>
        <input   name="myclass.id"   value="1"/>
    </div>
        <input type="submit" value="提交" />
    </form>

java代码

@ResponseBody
@RequestMapping(value = "app/edit/destination", method = RequestMethod.POST)
public void editDestination(Person person) {
    //处理参数
}

在ajax请求的控制器方法中,如果返回一个页面路径,不需要加@ResponseBody
否则,不管控制器方法有没有返回值,都要加@ResponseBody

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值