一、引言

最早我使用的是WebAPI微软的后台,把所有的数据绑定请求方法全部总结了一个遍,基本有了全面的认识。如今转战到java的SpringMVC平台,在此又把所有的方法总结一遍,算是springMVC版本,供大家参考了==

本章框架如下:

二、GET数据绑定

  • 简单类型

前台请求:

http://localhost:8080/SpringMVCmyBatis/user/paramGet1?id=123&name=阿道夫

后台接收代码:(其中id与name分别可以接受到数据)

 @RequestMapping(value="/paramGet1", method=RequestMethod.GET)@ResponseBody//requestParam中value指参数别名,required为是否必须,defaultvalue为参数默认值public String paramGet1(@RequestParam(value="id",required=true,defaultValue="666") Integer ididid,String name) throws Exception {return ididid+name;}
  • pojo类型

前台请求:

http://localhost:8080/SpringMVCmyBatis/user/paramGet2?f_id=123&f_code=阿道夫

后台接收代码:(其中user可以接收到f_id与f_code参数)

 //value请求路径,method请求方式@RequestMapping(value="/paramGet2", method=RequestMethod.GET)@ResponseBodypublic String paramGet2(User user,Integer F_ID) throws Exception {return user.getF_id()+user.getF_code();}

User类

public class User {private int f_id;private String f_code;private String f_pw;private Department department;public int getF_id() {return f_id;}public void setF_id(int f_id) {this.f_id = f_id;}public String getF_code() {return f_code;}public void setF_code(String f_code) {this.f_code = f_code;}public String getF_pw() {return f_pw;}public void setF_pw(String f_pw) {this.f_pw = f_pw;}public Department getDepartment() {return department;}public void setDepartment(Department department) {this.department = department;}}

三、POST数据绑定

1、application/json

  • 简单类型(该种方法证明失败不能成功接收)

前台请求:

后台接收:

 @RequestMapping(value="/paramPostJson1", method=RequestMethod.POST)public @ResponseBody String paramPostJson1(String F_ID,String F_CODE) throws Exception {return F_ID+F_CODE;}
  • pojo类型

前台请求:

后台接收:(记得要添加@ResponseBody)

 @RequestMapping(value="/paramPostJson2", method=RequestMethod.POST)public @ResponseBody User paramPostJson2(@RequestBody User user) throws Exception {return user;}

2、application/x-www-form-urlencoded

  • 简单类型

前台请求:

后台接收:

 @RequestMapping(value="/paramPostNormalUrlencode1", method=RequestMethod.POST)@ResponseBodypublic String paramPostNormalUrlencode1(String F_ID,String F_CODE) throws Exception {return F_ID+F_CODE;}
  • pojo类型

前台请求:

后台接收:(记得不要添加@ResponseBody,否则接收不到)

 @RequestMapping(value="/paramPostNormalUrlencode2", method=RequestMethod.POST)@ResponseBodypublic String paramPostNormalUrlencode2(User user) throws Exception {return user.getF_id()+user.getF_code();}

3、multipart/form-data

  • 简单类型

前台请求:

后台接收:

 @RequestMapping(value="/paramPostFormdata1", method=RequestMethod.POST)@ResponseBodypublic String paramPostFormdata1(HttpServletRequest request, String F_ID,String F_CODE) throws Exception {String id1 = request.getParameter("F_ID");String code1 = request.getParameter("F_CODE");return id1+code1;//return F_ID+F_CODE;}
  • pojo类型

前台请求:

后台接收:

 @RequestMapping(value="/paramPostFormdata2", method=RequestMethod.POST)@ResponseBodypublic String paramPostFormdata2( User user) throws Exception {return user.getF_id()+user.getF_code();}

很有可能你会接收不到,那是因为springMVC使用formdata方式要配置MultipartResolver ,在springmvc配置文件中添加

    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><property name="defaultEncoding" value="utf-8"></property><property name="maxUploadSize" value="10485760000"></property><property name="maxInMemorySize" value="40960"></property>
</bean>

然后还可能接着报错,这个就比较好找了,因为springMVC要用到file-upload jar包,而这个jar包同时依赖commons-iob jar包,说白了就是缺jar包,添加上就好了==bingo

四、总结

  • dot net webAPI与java springMVC
  • get中的简单类型与pojo类型绑定
  • post中enctype为application/json、application/x-www-form-urlencoded、multipart/form-data时的简单类型与pojo类型数据绑定;
  • post multipart/form-data方法配置

JavaWeb——springMVC请求数据绑定分类解析(深度好文)相关推荐

  1. Spark底层原理详细解析(深度好文,建议收藏)

    Spark简介 Apache Spark是用于大规模数据处理的统一分析引擎,基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量硬件之上, ...

  2. Java爬虫(二)-- httpClient模拟Http请求+jsoup页面解析

    博客 学院 下载 GitChat TinyMind 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye 写博客 发Chat 传资源 登录注册 原 Java爬虫(二)-- httpClient ...

  3. 解析深度神经网络背后的数学原理!

    作者 | Piotr Skalski 译者 | 巧克力 编辑 | Jane 出品 | AI科技大本营 [导读]为了更好地理解神经网络的运作,今天只为大家解读神经网络背后的数学原理.而作者写这篇文章的目 ...

  4. 【深度学习】解析深度神经网络背后的数学原理

    来源:产业智能官 解析深度网络背后的数学 如今,已有许多像 Keras, TensorFlow, PyTorch 这样高水平的专门的库和框架,我们就不用总担心矩阵的权重太多,或是对使用的激活函数求导时 ...

  5. springMVC请求流程详解

    SpringMVC框架是一个基于请求驱动的Web框架,并且使用了'前端控制器'模型来进行设计, 再根据'请求映射规则'分发给相应的页面控制器进行处理.核心流程: 第一步:发起请求到前端控制器(Disp ...

  6. 深度好文:Netflix奈飞微服务架构设计解析

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"书",获取 来源:22j.co/dz54 1 概述 数年来,Netflix 一直是全球 ...

  7. SpringMVC注解@RequestParam全面解析____ 注解@RequestParam如何使用加与不加的区别

    SpringMVC注解@RequestParam全面解析 在此之前,写项目一直用的是@RequestParam(value="aa" required=false)这个注解,但是并 ...

  8. 解析深度学习:语音识别实践 (俞栋等著) 完整pdf[44MB]

    AlphaGo与李世石的围棋大战激发了人们对人工智能是非的诸多争论.人工智能背后的工作原理深度学习跳入大众的视野.AlphaGo的大获全胜一定程度展示了深度学习在应用领域的成功,而语音识别正是深度学习 ...

  9. [SpringMVC]SpringMVC学习笔记一: springmvc原理及实例解析.

    前言: 今天来回顾下SpringMVC的开发原理, 使用图文并茂的方式 来解析其中的内幕, 我相信懂了其中的运行机制后, 对于面试中SpringMVC大家都可以说so easy了. 一, 图示法 第二 ...

最新文章

  1. 由多线程内存溢出产生的实战分析
  2. Android自定义ScrollView
  3. redis key失效的事件_《分享几道高频 Redis 高频面试题,面试不用愁》
  4. 复现原文(一):Single-cell RNA sequencing of human kidney(step by step)
  5. 用history api偷换浏览器历史记录
  6. HTTP 404 - 未找到文件 怎么样解决
  7. java 基础 —— 文件操作(File)
  8. 寻找发帖水王java_编程之美–寻找发帖水王 | Acm之家
  9. SpringBoot项目获取Spring容器中的bean
  10. logback 简介
  11. python基础之字典函数(12)
  12. 采用中断模式编程并使用杜邦线模拟开关实现LED灯的亮灭
  13. jpg转bmp c语言 linux,C语言实现BMP转换JPG的方法
  14. wampserver安装好后相关的设置和在不同的电脑上测试
  15. 中高级运维工程师所需要掌握的技能
  16. 零粉丝直播带货,日赚两万是真是假?最新抖音直播玩法!
  17. win10远程桌面连接计算机密码错误,访问win10的远程桌面(Remote Desktop)总是凭据或者用户密码错误...
  18. 软件测试工资直追开发,是我的错觉吗?
  19. java 根据 SVN changeLog 文件 生成增量升级包
  20. Java在c盘fld目录下的文件名_VBS脚本常用代码大全2011整理.docx

热门文章

  1. python中关于命名的例子_Python()-类命名空间和对象/实例命名空间
  2. 问答| 为什么car-like robot运动中存在最小转弯半径?
  3. 穿越火线好友服务器不稳定,穿越火线合区后新危机,玩家:卡顿掉帧没法玩
  4. 直接学python3_新手应该学python2还是python3?
  5. AWT_事件监听2(Java)
  6. 解决H5的a标签的download属性下载service上的文件/图片出现跨域问题
  7. input file 上传图片判断图片的宽高尺寸
  8. joomla添加html,如何将自定义html代码添加到Joomla 2.5菜单项?
  9. OpenRowSet导入Excel大批量数据
  10. IDEA整合Spring Boot项目访问jsp文件