总结各种SpringMVC传递参数方式

一 引言

SpringMvc作为越来越流行的MVC框架,市场上使用的非常多。而我们在使用SpringMvc时,传递参数是非常重要的,所以专门写篇文章来总结一下各种传参方式。

二 传参方式

2.1 普通属性

基础类型

前台:

后台:

loginUser(String name)

同名原则,属性太多要写很多形参,非常麻烦.

对象传递

前台:

后台:

class User{

Long id;

String name;

String password;

Dept dept;

}

add(User user) 同属性名原则

User是Domain对象,所有的属性都要和数据库字段对应,但是有的不会放到domain中,比如确认密码.

基础类型(非domain属性)+对象传递(domain属性)

前台:

后台:

class User{

Long id;

String name;

String password;

}

add(User user,String confirmPwd )

2.2 集合属性

角色--权限

拼接字符串 前台拼接字符串后台拆分字符串

前台:

后台:

saveRole(Role role,String ids){

String[] ids1 = ids.splict(“,”);

}

1:zs:18,2:ls:20,3:ww:30

数组

前台:

后台:

saveRole(Role role,Long[] ids){

}

item[index].id

前台:

后台:

class Role{

Long id;

String name;

List

permissions;

}

addRole(Role role)

数组方式只能是表单提交用,而拼接字符串和items[index].id支持ajax

三 总结

相较于Struts2值栈传递不仅效率高,而且这种以形参方式传递也非常简单。所以一定要好好掌握各种传递方式。

感谢源码时代教学讲师提供此文章!

本文为原创文章,转载请注明出处!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180511A1L40R00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券