springMVC中controller的传参的几种案例
1、springmvc的controller方法不指定method时,默认get/post都支持
//@RequestMapping(value="test")
//@RequestMapping(value = "test", method = RequestMethod.GET)
//@ReqestMapping(value = "test", method = RequestMethod.POST)
public void test(String test)
{
}
2、每个参数都列出来,用String类型申明(get/post都可以)
@RequestMapping(value = "getChinaCityData", produces = "application/json; charset=utf-8")
@ResponseBody
public String getChinaCityData(String startTime,String endTime,String timeType,String cityCode) { }
3、参数太多的时候,可以考虑直接传递对象(只支持post)
后端用@RequestBody注释,对象是一个javaBean。
@RequestMapping(value = "/forecastModel/selectProvinceAssessmentStatistics", produces = "application/json; charset=utf-8")
@ResponseBody
public String selectProvinceAssessmentStatistics(@RequestBody ProvAssessVo provAssessVo)
{
String time=provAssessVo.getStartTime();//ProvAssessVo是一个对象,是javaBean
}
前端ajax要加:contentType : 'application/json;charset=utf-8',
var param = {};
var statsType = thisObj.statsType;
var startTime = thisObj.startTime.Format("yyyy-MM-01 00:00:00");
var endDate = new Date();
endDate.setTime(thisObj.endTime.getTime());
endDate = endDate.dateAdd("m", 1);
var endTime = endDate.Format("yyyy-MM-01 00:00:00");
param.startTime = new Date(startTime);
param.endTime = new Date(endTime);
param.type = statsType;
param.offsets = $('#hourTypeValue').text().match(/\d+/)[0];
CSJJ_RequestMethod(url,JSON.stringify(param),"json","post", true, function (data)
{
thisObj.renderProvAssessmentStatisticsBody(data);
});
4、使用requestParam或者PathVariable。
@GetMapping("/get")
public User getUserById(@RequestParam(name = "id", required = true,defaultvalue=0) Integer id)
{
if (id.intValue() == 0) {
return null;
}
return list.get(id);
}
@GetMapping("/get/{id}")
public User getUserByPathValue(@PathVariable(name = "id", required = true) Integer id)
{
return list.get(id);//该方式用来获取路径中的参数
}
5、使用HttpServletRequest
(1)用来传参:String name = request.getParameter("name")
(2)用来获取http的相关信息,多用在登陆,用户日志,文件上传等。
springMVC中controller的传参的几种案例的更多相关文章
- SpringMVC中使用Json传数据
在web项目中使用Json进行数据的传输是非常常见且有用的,在这里介绍下在SpringMVC中使用Json传数据的一种方法,在我的使用中,主要包括下面四个部分(我个人喜好使用maven这类型工具进行项 ...
- jq中的ajax传参
一. jq中的Ajax传参有两种 1.通过url地址来传参 2.通过data来传递参数 1. url来传递参数 function GetQuery(id) { | ...
- 详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析]
目录 前言 现象 源码分析 HandlerMethodArgumentResolver与HandlerMethodReturnValueHandler接口介绍 HandlerMethodArgumen ...
- SpringMVC中Controller
详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析] 目录 前言 现象 源码分析 HandlerMethodArgumentResolver与HandlerMethodR ...
- 详解SpringMVC中Controller的方法中参数的工作原理——基于maven
转自:http://www.tuicool.com/articles/F7byQn 前言 SpringMVC是目前主流的Web MVC框架之一. 如果有同学对它不熟悉,那么请参考它的入门blog:ht ...
- 【MVC - 参数原理】详解SpringMVC中Controller的方法中参数的工作原理[附带源码分析]
前言 SpringMVC是目前主流的Web MVC框架之一. 如果有同学对它不熟悉,那么请参考它的入门blog:http://www.cnblogs.com/fangjian0423/p/spring ...
- springmvc 中controller与jsp传值
参考:springmvc 中controller与jsp传值 springMVC:将controller中数据传递到jsp页面 jsp中,死活拿不到controller中的变量. 花了半天,网上列出各 ...
- Hutool工具里,POST方法,body中传参的几种调用方法
接口说明: POSTMAN测试: JAVA代码: package com.provy.guard.api; import java.util.HashMap; import java.util.Map ...
- springMVC中controller的几种返回类型
==网文1,还不错,感觉比较老旧springMVC中controller的几种返回类型 - CSDN博客http://blog.csdn.net/qq_16071145/article/details ...
随机推荐
- 【监控】jvisualvm之jmx远程连接 jar启动应用
一.Java -jar启动添加如下参数就可以了 -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=127.0.0.1 -Dcom.su ...
- SLF4J: Failed to load class "org.slf4j.impl.StaticLo
今天在修改项目是修改了pom中的配置启动后提示下面的错误, SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder&qu ...
- redis发布订阅实现各类定时业务(优惠券过期,商品不支付自动撤单,自动收货等)
修改redis配置文件找到机器上redis配置文件conf/redis.conf,新增一行 notify-keyspace-events Ex 最后的Ex代表 监听失效的键值 修改后效果如下图 代码 ...
- 如何寻找sql注入漏洞?
1.sql注入是怎么产生的 2.如何寻找sql注入漏洞 在地址栏输入单双引号造成sql执行异常(get) post请求,在标题后输入单引号,造成sql执行异常.
- ACAG 0x02-8 非递归实现组合型枚举
ACAG 0x02-8 非递归实现组合型枚举 之所以专门来写这道题的博客,是因为感觉从最根本处了解到了递归的机器实现. 主要的就是两个指令--Call和Ret. Call指令会将返回地址入栈(系统栈) ...
- 使用Xpath+多进程爬取诗词名句网的史书典籍类所有文章。update~
上次写了爬取这个网站的程序,有一些地方不完善,而且爬取速度较慢,今天完善一下并开启多进程爬取,速度就像坐火箭.. # 需要的库 from lxml import etree import reques ...
- django考点答案
1 列举Http请求中常见的请求方式 2 谈谈你对HTTP协议的认识.1.1 长连接3 简述MVC模式和MVT模式4 简述Django请求生命周期5 简述什么是FBV和CBV6 谈一谈你对ORM的理解 ...
- python——selenium库的使用
selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Fire ...
- Spark数据倾斜解决方案(转)
本文转发自技术世界,原文链接 http://www.jasongj.com/spark/skew/ Spark性能优化之道——解决Spark数据倾斜(Data Skew)的N种姿势 发表于 2017 ...
- vue cli4.0 快速搭建项目详解
搭建项目之前,请确认好你自己已经安装过node, npm, vue cli.没安装的可以参考下面的链接安装. 如何安装node? 安装好node默认已经安装好npm了,所以不用单独安装了. 如何安装v ...