SpringMVC下5中参数类型传递

1、普通参数

 //普通参数:请求参数名与形参名不同@RequestMapping("/commonParamDifferentName")@ResponseBodypublic String commonParamDifferentName(@RequestParam("name") String username, int age){System.out.println("普通参数传递:username:"+username+",age:"+age);return "{'module':'common param differenet name'}";}

@RequestParam 相当于给对应的形参起了一个别名,用来接受url中 name对应的值:

xxxx?name=xx&age=xx或是xxxx?username=xx&age=xx 都是一样的效果

2、对引用类型

 @RequestMapping("/pojoParam")@ResponseBodypublic String  PojoParam(User user){System.out.println("pojo类型参数传递:user:"+user);return "{'module':'pojo param'}";}//嵌套pojo参数(一个pojo对象中包含其他的pojo对象,User中包含address)@RequestMapping("/pojoContainParam")@ResponseBodypublic String pojoContainParam(User user){System.out.println("pojo嵌套类型参数传递:user"+user);return "{'module':'pojoContainParam'}";}

在SpringMVC下,获取pojo参数只需要把对应的值发送请求即可。

会自动创建一个对象来接受url中的数据,比如:

user中的属性                                        address中的属性

 当url中为:xx?name=xx&age=&xx&address.province=xx&address&city=xx这样的请求信息提交后,会自动创建一个user对象来接收这些数据装配成一个user对象。

3、数组和集合

    //数组@RequestMapping("/arrayParam")@ResponseBodypublic String arrayParam(String[] likes){System.out.println("数组传递参数:likes"+ Arrays.toString(likes));return "{'module':'array param'}";}//集合参数@RequestMapping("/listParam")@ResponseBodypublic String listParam(@RequestParam List<String> likes){System.out.println("集合参数传递:"+likes);return "{'module':'listParam'}";}

在集合参数传递时,第一次不加@RequestParam注解产生的错误:

 意思是List 没有构造方法。

对@RequestParam的认识:当有这个注解的时候,不会创建一个对象来接受url中的数据,即将数据作为参数放入集合即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418016.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos 没有nmtui命令_Linux free 命令

在Linux/Unix 系统上&#xff0c;free是一个很受系统管理员欢迎的命令&#xff0c;它是一个功能强大的工具&#xff0c;他能以一种易读的方式把内存使用情况展示出来free 展示了系统中空闲和已经使用了的物理内存、交换内存以及内核的缓冲区和页面缓存&#xff0c;所有展示的信…

spring中注解来创建bean

一、 核心配置文件中的组件来扫描对应包下面的所有类来匹配。 当我们使用ApplicationContext实例化的对象调用getBean函数获取bean的时候&#xff0c;内部时根据Component内的值来确定创建哪个对象&#xff1a; Component中的值就类似之前bean配置中id的作用一样。 二、纯注解…

django设置超级管理员_Django的简介与安装

Django的简介与安装Django 是用 Python 开发的一个免费开源的 Web 框架&#xff0c;可以用来快速搭建优雅的高性能网站。它采用的是“MVC”的框架模式&#xff0c;即模型 M、视图 V 和控制器 C。 Django 最大的特色&#xff0c;在于将网页和数据库中复杂的关系&#xff0c;转化…

SpringMVC的准备工作

一、 先通过Maven创建一个webapp项目 创建完成之后在pom文件中设置一些基本的信息&#xff1a; 1、打包方式 <packaging>war</packaging> 以war包的形式打包 2、相关依赖 现阶段只有3个&#xff1a;SpringMVC、thymeleaf与Spring整合、ServletAPI <dependencie…

请领导批阅文件怎么说_领导说“谢谢”,该怎么回?低情商才说不客气,高情商的都这样说!...

职场中&#xff0c;当我们顺手帮了领导个小忙或者领导跟我们要工作资料&#xff0c;我们发给领导的时候&#xff0c;领导可能会顺口说“收到&#xff0c;谢谢”&#xff0c;这样的时候&#xff0c;其实领导就是表示收到了。我们如何回复&#xff0c;才不至于失了礼貌&#xff0…

vue的简单学习

vue和thymeleaf &#xff1a; 若先显示框架后加载数据则用vue 若后端处理好之后发送给前端页面显示用thymeleaf (弹幕) 对于前后端分离的认识&#xff1a; 使用vue 将前端页面、框架等建立好&#xff0c;只需要后端发送数据即可 但thymeleaf就需要在服务器启动之前将数据保存到…

Selleck --- 01Cookie

1. //1.设置Cookie function setCookie(name,value,days) {var date new Date();date.setDate(date.getDate() days);document.cookie name "" value ";expires" date; } console.log(setCookie("pwd","5566778899",1)); //获取c…

JS~~~ 前端开发一些常用技巧 模块化结构 命名空间处理 奇技淫巧!!!!!!...

前端开发一些常用技巧 模块化结构 &&&&& 命名空间处理 奇技淫巧&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;2016-09-29 17:16:39 #####背景&#xff1a; 前端开发过程中&#xff0c;创建js对象…

vscode 英伟达tk1_英伟达的未来,不只是GPU

成立于1993年的英伟达&#xff0c;最为人熟知的就是他们的GPU。尤其是进入最近几年&#xff0c;因为AI的火热&#xff0c;英伟达GPU的关注度暴增&#xff0c;行业对他们在这个领域的认可程度也达到了前所未有的高度。但其实GPU只是英伟达的根本。历经过去几年的收购和产品线拓展…

语法2

页面(PAGE)标记(TAGS) HTML 文件结构(Document Structures)<html>...</html><head>...</head><body>...</body><HTML><HEAD> <title>, <base>, <link>, <isindex>, <meta></HEAD><…

生成n对括号的合法全排列

生成n对括号的合法全排列&#xff1a; 给定一整数N&#xff0c;输出N对括号的合法全排列 例&#xff1a; 2 3 ()() (()) ()()() (())() ()(()) ((())) 分析&#xff1a; 很经典的需要迭代来进行实现。 迭代的关键在于找到跳出迭代的条件&#xff0c;以及每次迭代的策略。 出口&…

springMVC 源码学习-请求映射原理

一、DispatcherServlet的继承关系 1、FrameworkServlet HttpServlet中的doGet等方法在FrameworkServlet之中重写了&#xff0c;都是调用该方法&#xff1a; 在这个方法内部调用doServlce的方法 这个doService的方法在FrameworkServlet中是一个抽象方法&#xff0c;说明是交给它…

constraintlayout布局新特性_AMD发布Ryzen PRO 4000系列移动处理器:多了超线程和商用安全特性...

昨日晚间&#xff0c;AMD正式发布了基于Renoir的最新一代商用移动处理器Ryzen PRO 4000系列&#xff0c;本次共发布3款处理器&#xff0c;分别是Ryzen 7 PRO 4750U、Ryzen 5 PRO 4650U和Ryzen 3 PRO 4450U&#xff0c;我们制作了规格对比表&#xff0c;如下&#xff1a;从规格对…

易支付系统源码_刷脸支付系统源码,插件源码合作模式有哪些,采购源码需要注意什么...

对刷脸支付比较关注的朋友&#xff0c;应该都知道源码。当拥有这个&#xff0c;就意味着有了独立的系统。也意味着可以打造自己的品牌&#xff0c;转化自己资源&#xff0c;获取更多的利润。但是想拥有一套源码也是不简单的&#xff0c;不仅因为编写的难度和价格&#xff0c;也…

SpringMVC源码-不同类型的参数解析

随便写一个demo: RequestMapping("/car/{id}")public Map<String, Object> getCar(PathVariable("id") Integer id,RequestParam("type") String type,RequestParam("hobby") List<String> hobby){Map<String, Object&…

raid5 合适 多少块硬盘_raid1 raid2 raid5 raid6 raid10如何选择使用?各需要几块硬盘?...

我们在做监控项目存储时&#xff0c;经常会用到磁盘阵列&#xff0c;什么是磁盘阵列呢&#xff1f;那为什么要做磁盘阵列呢&#xff1f;raid1 raid2 raid5 raid6 raid10各有什么优势&#xff1f;本期我们来看下。一、什么是Raid&#xff1f;它有什么作用&#xff1f;1、什么是R…

SpringMVC 源码学习 返回值处理

SpringMVC中对返回值的数据基本分为两类&#xff1a; 1、响应数据 2、响应页面 一、响应数据 响应数据大多数都是将返回值的格式转换为JSON格式然后展示在页面或者保存i起来。 第一步&#xff1a;在SpringBoot中需要引入json场景 <dependency><groupId>org.sprin…

body div js 放大图片_jquery图片放大插件鼠标悬停图片放大效果

都知道jquery都插件是非常强大的&#xff0c;最近分享点jquery插件效果&#xff0c;方便效果开发使用。一、HTML代码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> …