目录

  • 工程代码
  • 普通接收请求参数
  • pojo接收请求参数
  • @RequestParam接收请求参数
  • restful风格 URL接收请求参数
  • json接收请求参数
  • Array数据接收请求参数
  • 接收请求参数序列化 serialize

工程代码

github: https://github.com/dengjili/springmvc

普通接收请求参数

请求地址: http://localhost:8080/springmvc/param/normalParam?name=%张三&note=mmp

 // 如果参数名称与url中保持一致,则无需注解,自动映射// 适用于参数个数较少@RequestMapping("/normalParam")public ModelAndView normalParam(String name, String note) {logger.debug("name: {}", name);logger.debug("note: {}", note);ModelAndView mv = new ModelAndView();mv.setViewName("index");return mv;}

pojo接收请求参数

请求地址: http://localhost:8080/springmvc/param/beanParam?name=abc&note=mmp2

 // pojo中的属性与url中保持一致,则无需注解,自动映射// 适用于参数个数较多,封装成bean对象@RequestMapping("/beanParam")public ModelAndView beanParam(BeanParam beanParam) {logger.debug("name: {}", beanParam.getName());logger.debug("note: {}", beanParam.getNote());ModelAndView mv = new ModelAndView();mv.setViewName("index");return mv;}

BeanParam

public class BeanParam {private String name;private String note;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getNote() {return note;}public void setNote(String note) {this.note = note;}}

@RequestParam接收请求参数

请求地址: http://localhost:8080/springmvc/param/requestParam?pre_name=ab&pre_note=ha

 // url和参数名称不一致,使用@RequestParam进行参数转换// boolean required() default true;@RequestMapping("/requestParam")public ModelAndView requestParam(@RequestParam("pre_name") String name, @RequestParam("pre_note") String note) {logger.debug("name: {}", name);logger.debug("note: {}", note);ModelAndView mv = new ModelAndView();mv.setViewName("index");return mv;}

restful风格 URL接收请求参数

请求地址: http://localhost:8080/springmvc/param/get/1236787/张三

 // restful风格 关键字:@RequestMapping, @PathVariable@RequestMapping(value = "/get/{id}/{name}", method = RequestMethod.GET)public ModelAndView get(@PathVariable("id") String id, @PathVariable("name") String name) {logger.debug("name: {}", id);logger.debug("name: {}", name);ModelAndView mv = new ModelAndView();mv.setViewName("index");return mv;}

前置页面 jquery.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8" isELIgnored="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>复杂参数学习</title><script type="text/javascript" src="${pageContext.request.contextPath }/resource/js/jquery-1.11.3.min.js"></script><script type="text/javascript">$(function($) {$("#json").bind("click", function() {var data = {name : "mmp",param : {start : 1,limit : 10}};// 发送json数据$.ajax({type : "POST",url : "requestBody",data : JSON.stringify(data),contentType : 'application/json',success : function(data) {alert(JSON.stringify(data));}});});$("#list").bind("click", function() {// []认为是数组var data = [ 1, 2, 4 ];// 发送json数据$.ajax({type : "POST",url : "listArray",data : JSON.stringify(data),contentType : 'application/json',success : function(data) {alert(JSON.stringify(data));}});});$("#custlist").bind("click", function() {// []认为是数组,自定义类型var data = [ {start : 1,limit : 10}, {start : 5,limit : 20}, {start : 100,limit : 200} ];// 发送json数据$.ajax({type : "POST",url : "listCust",data : JSON.stringify(data),contentType : 'application/json',success : function(data) {alert(JSON.stringify(data));}});});$("#commit").bind("click", function() {// []认为是数组var data = [ 1, 2, 4 ];// 发送json数据$.ajax({type : "GET",url : "serialize",data : $("#form").serialize(),success : function(data) {alert(JSON.stringify(data));}});});});</script>
</head>
<body><h2>json</h2><button type="button" id="json">json</button><hr><h2>列表数据</h2><button type="button" id="list">列表数据</button><hr><h2>自定义类型列表</h2><button type="button" id="custlist">自定义类型列表</button><hr><h2>表单序列化</h2><form id="form" action="serialize"><table><tr><td>名称</td><td><input id="name" name="name" value=""/></td></tr><tr><td>备注</td><td><input id="note" name="note" value=""/></td></tr><tr><td></td><td align="right"><input id="commit" type="submit" value="点击"/></td></tr></table></form>
</body>
</html>

json接收请求参数

请求地址: 详见jquery.jsp文件

 // json数据传输@RequestMapping(value = "/requestBody", method = RequestMethod.POST)public ModelAndView requestBody(@RequestBody ComplexParam complexParam) {// 数据域ModelAndView mv = new ModelAndView();mv.addObject(complexParam);mv.setView(new MappingJackson2JsonView());return mv;}

Array数据接收请求参数

请求地址: 详见jquery.jsp文件

 // list Array数据传输@RequestMapping(value = "/listArray", method = RequestMethod.POST)public ModelAndView listArray(@RequestBody List<Long> array) {// 数据域ModelAndView mv = new ModelAndView();mv.addObject(array);mv.setView(new MappingJackson2JsonView());return mv;}
 // list Array数据传输(自定义类型)@RequestMapping(value = "/listCust", method = RequestMethod.POST)public ModelAndView listCust(@RequestBody List<PageParam> array) {// 数据域ModelAndView mv = new ModelAndView();mv.addObject(array);mv.setView(new MappingJackson2JsonView());return mv;}

接收请求参数序列化 serialize

请求地址: 详见jquery.jsp文件

 // $("#form").serialize() 显示给出?name=baidu&note=mmp@RequestMapping(value = "/serialize", method = RequestMethod.GET)public ModelAndView serialize(BeanParam beanParm) {// 数据域ModelAndView mv = new ModelAndView();mv.addObject(beanParm);mv.setView(new MappingJackson2JsonView());return mv;}

springmvc接收请求参数(springmvc教程二)相关推荐

  1. java 页面接收参数_详解SpringMVC——接收请求参数和页面传参

    spring接收请求参数: 1,使用HttpServletRequest获取 @RequestMapping("/login.do") public String login(Ht ...

  2. springMVC接收请求参数的几种方式

    1.  用注解@RequestParam绑定请求参数 用注解@RequestParam绑定请求参数a到变量a,当请求参数a不存在时会有异常发生,可以通过设置属性required=false解决,例如: ...

  3. SpringMVC框架 学习DAY_02 : 接收请求参数/向模板页面转发数据/重定向与转发 /Session

    1. 接收客户端提交的请求参数 1.1. 使用HttpServletRequest接收请求参数 在处理请求的方法的参数列表中,添加HttpServletRequest类型的参数,在处理请求的过程中,调 ...

  4. SpringMVC的请求参数,类型转换器(日期格式),请求映射

    SpringMVC的请求参数,类型转换器(日期格式),请求映射 请求参数 springMVC将传递的参数封装到处理的方法形参中,达到快速访问参数的目的 普通参数类型 参数名与处理器方法形参名保持一致 ...

  5. SpringMVC 接收前端参数

    SpringMVC 接收前端参数 1. 接收字符串 JavaScript代码 $.ajax({url: "http://localhost:8080/test",method: & ...

  6. SpringMVC之请求参数的获取方式

    转载出处:https://www.toutiao.com/i6510822190219264516/ SpringMVC之请求参数的获取方式 常见的一个web服务,如何获取请求参数? 一般最常见的请求 ...

  7. springMVC接收数组参数

    js传递数组 dd.do?titles[]=col1&titles[]=col2&titles[]=col3 var param = {titles:['col1','col2','c ...

  8. java控制器接收请求参数_SpringMVC之接收请求参数和页面传参

    Spring接收请求参数 1,使用HttpServletRequest获取 Java代码 @RequestMapping("/login.do") public String lo ...

  9. Struts2的第二天(Action接收请求参数)

    Struts2的第二天 Struts2的第二天的内容 1. Struts2框架中的Servlet的API的使用 2. Struts2中Action接收请求参数 3. Struts2中自定义拦截器 案例 ...

最新文章

  1. 不藏私分享五個線上自學平台
  2. 面试后总是没有结果的7大原因
  3. 轮换html有虚宽出现,乒乓球理论考试复习资料
  4. BCD码和ASCII码的区别
  5. 个人认为,载人登陆火星技术上无法实现
  6. 希腊字母表(含读音)
  7. 设置计算机启动引导顺序,如何设置电脑启动顺序
  8. ajax $.get怎么使用,jquery之ajax之$.get方法的使用
  9. 计算机找不到ie浏览器,ie浏览器不见了,教您ie浏览器不见了怎么办
  10. 使用USBWriter等工具做U盘启动盘后容量变小的解决办法
  11. 使用GCD 转自 Posted by 唐巧
  12. PVE下的黑群晖的其他后续设置
  13. kernel panic - not syncing :fatal exception
  14. 超声成像_人工智能如何帮助转变医学超声成像
  15. 产品06-流程图与结构图
  16. python 电动车问题
  17. 云中数据_免费备份和共享云中数据的最佳网站
  18. 韩顺平Java学习 泛型
  19. html5录音+百度语音实现语音识别
  20. 湖南大学校园网 TheServerIsNotResponding

热门文章

  1. 微信营销吸粉秘籍之:360谈谈
  2. 点云深度学习系列博客(二): 点云配准网络PCRNet
  3. Nginx设置图片防盗链(白名单与黑名单)
  4. 虚拟偶像PK现实偶像,哪个更能发挥粉丝经济效应?
  5. EXCEL按照文字颜色统计数量
  6. 如何开发⼀款移动端 Libra 钱包
  7. MS coco数据集下载链接
  8. java多线程 注意事项_多线程使用及注意事项
  9. [css] css 3d 动画,跟随鼠标移动做球形旋转
  10. java 图像梯度检测_opencv学习笔记(六)---图像梯度