Android—SpringBoot实现前后端数据交互

星光不问赶路人,时间不负有心人

这篇是针对android传数据到后台springboot,使用Xutils框架

使用Xutils框架 关于xutils的使用这是老师的博客大家可以看看

文章目录

  • Android---SpringBoot实现前后端数据交互
    • 前端后端数据交互方式
    • SpringBoot获取参数的几种常用注解
      • `get请求`
      • `post请求`
        • 后台实体对象接收
        • key-value接收
        • map接收

前端后端数据交互方式

前端后端数据提交格式

SpringBoot获取参数的几种常用注解

@PathVariable:一般我们使用URI template样式映射使用,即url/{param}这种形式,也就是一般我们使用的GET,DELETE,PUT方法会使用到的,我们可以获取URL后所跟的参数。

@RequestParam:一般我们使用该注解来获取多个参数,在()内写入需要获取参数的参数名即可,一般在PUT,POST中比较常用。

@RequestBody:该注解和@RequestParam殊途同归,我们使用该注解将所有参数转换,在代码部分在一个个取出来,也是目前我使用到最多的注解来获取参数

get请求

params传参一般用于get请求,params传参时参数会附于uri后面以问号形式展示,比如

http://localhost/login?username=xiaoming&password=123456

这种就是get请求常见格式,在地址栏输入http://localhost/login,然后选params再输入key和value,然后问号形式展现的参数就会被自动加到地址最后。

一般用于查询数据,采用明文进行传输,一般用来获取一些无关用户信息的数据,

@GetMapping 组合注解,是 @RequestMapping(method = RequestMethod.GET) 的缩写

  1. get请求,url路径传参
    get请求一般通过url传参,如:
    http://10.138.164.148:9000/get/21
    后端要获取name参数,可以使用@RequestParam注解
    后端使用@PathVariable可以接收路径参数21。

Android代码:

RequestParams requestParams = new RequestParams("http://10.138.164.148:9000/get/21");
requestParams.addQueryStringParameter("name","suke");

SpringBoot代码:

 @GetMapping("/get/{id}")public void getTest(@PathVariable (name = "id") int id, @RequestParam (name = "name") String pname){System.out.println("id = " + id);System.out.println("pname = " + pname);}

当请求为get请求时,使用@PathVariable或者@RequestParam获取参数值,获取路径参数。@PathVariable一般用于获取获取*url/{id}这种形式的参数;@RequestParam获取查询参数。即url?name=*这种形式

post请求

body传参一般用于post请求,body传参时需要在body里写json数组,参数不会显示在地址栏中
ps:post请求一般用来传登录时的账号密码,以json数组的形式传给后台

后台实体对象接收

较推荐使用json格式传值

Android代码:

RequestParams requestParams = new RequestParams("http://10.138.164.148:9000/post");Student qifei = new Student(44, "qifei", 20);Gson gson = new Gson();String jsonStudent = gson.toJson(qifei);requestParams.setAsJsonContent(true);  //  设置传输格式为jsonrequestParams.setBodyContent(jsonStudent);

SpringBoot代码:

@PostMapping("/post")public String postTest(@RequestBody Student student){System.out.println(student.toString()+"========");return student.toString();}

key-value接收

Android代码:

RequestParams requestParams = new RequestParams("http://10.138.164.148:9000/postq");requestParams.addBodyParameter("name","qifei");requestParams.addBodyParameter("age","18");

SpringBoot代码:

 @PostMapping("/postq")public void postTest1(@RequestParam (name = "name") String pname , @RequestParam (name = "age") String age){System.out.println("pname = " + pname);System.out.println("age = " + age);return ;}

map接收

Android代码:

/*post请求 ==> map接受 */RequestParams requestParams = new RequestParams("http://10.138.164.148:9000/post3");   //json对象传值Student qifei = new Student(44, "qifei", 20);Gson gson = new Gson();String jsonStudent = gson.toJson(qifei);requestParams.setAsJsonContent(true);requestParams.setBodyContent(jsonStudent);

SpringBoot代码:

@PostMapping("/post3")public String postTest3(@RequestBody Map<String,String> mp){System.out.println(mp.get("name") + mp.get("age"));return mp.get("name")+mp.get("age");}

Android---SpringBoot实现前后端数据交互相关推荐

  1. SpringBoot实现前后端数据交互、json数据交互、Controller接收参数的几种常用方式...

    1.获取参数的集中常见注解 @PathVariable:一般我们使用URI template样式映射使用,即url/{param}这种形式,也就是一般我们使用的GET,DELETE,PUT方法会使用到 ...

  2. 详解 AJAX-SpringBoot 前后端数据交互

    详解 AJAX-SpringBoot 前后端数据交互 1. Ajax 概述 Ajax 的英文全称是 "Asynchronous JavaScript and XML",即 &quo ...

  3. 前后端数据交互方法 汇总

    这篇文章给大家介绍几种常用的前后端数据交互方法,并给出使用建议.以提高前后端协同开发的效率.非常的详细,推荐给小伙伴们,有需要的小伙伴可以参考下. 1.HTML赋值 输出到 Element 的 val ...

  4. 干货 | 万字长文全面解析GraphQL,携程微服务背景下的前后端数据交互方案

    作者简介 古映杰,携程研发高级经理,负责前端框架和基础设施的设计.研发与维护.开源项目react-lite和react-imvc作者. 前言 随着多终端.多平台.多业务形态.多技术选型等各方面的发展, ...

  5. ajax连接前后端原理,前后端数据交互方法和原理

    前后端数据交互方法和原理 发布时间:2018-10-28 11:25, 浏览次数:742 对于想要搞web的新手而言,会用html+css+javascript实现一个页面没什么太大的困难,但是想要前 ...

  6. 前后端数据交互——ajax技术

    在实际开发过程中,前端页面通常需要根据后台数据实现动态生成和实时更新,因此如何实现前后端数据交互成了开发过程中的难题. 现将使用ajax技术解决前后端数据的交互: (1)ajax技术介绍: ajax一 ...

  7. 前后端数据交互|分页查询|表格-双向绑定|get和post的区别

    目录 1 前后端数据交互 1.1 前端代码 部署在 前端服务器 1.2 前端代码 在 浏览器展示(只展示页面,没有数据)----自给自足 1.3 前端/浏览器 请求 后端数据 (后端死数据)----给 ...

  8. 软件测试的交互,软件测试--前后端数据交互

    作为一个合格的软件测试人员, 能够熟练定位bug的位置是属于前端还是后端,是必备技能之一.所以就需要明白前后端数据是怎么进行交互的. 一.网站数据处理主要分为三层 第一层,表示层,这部分可以用HTML ...

  9. 基于axios前后端数据交互

    基于axios前后端数据交互 一.get 1.前端 <!DOCTYPE html> <html lang="en"> <head><met ...

最新文章

  1. 蓝牙协议 HFP,HSP,A2DP等等
  2. c++STL容器的Deque
  3. python基本数据类型选择题-python基础学习——基础数据类型练习题(二)
  4. ERROR Cannot determine the location of the VS Common Tools Folder
  5. 【前端面试题】关于一些js的一些面试题(金融行业),我和面试官扯了三个小时
  6. 北京大学c语言试题及答案,北大网络教育(计算机专业)C程序设计作业答案
  7. UISegmentedControl UISlider
  8. python机器学习库sklearn——交叉验证(K折、留一、留p、随机)
  9. php开发人脸识别流程,php使用face++实现一个简单的人脸识别系统
  10. 华为交换机初始化_华为交换机的初始配置
  11. PE聚乙烯塑料会污染环境吗?
  12. linux远程登录命令
  13. VS2019无法启动程序 系统找不到指定文件解决办法
  14. Youtube上播放量前100的单曲整理
  15. int... num什么意思?
  16. 计算机滴答滴的教学,滴答滴教案
  17. chmod 777 修改文件权限
  18. G6309列车02车05D号
  19. electron 中遇到的报错
  20. 零售行业常见数据分析简介

热门文章

  1. adb:获取手机音量并设置音量大小
  2. 卸料装置弹性零件的计算方法_弹性卸料装置的基本零件包括
  3. 深度学习Week3-天气识别(Pytorch)
  4. 安卓studio_适用于Android Studio的17个顶级插件
  5. 2023 电脑PC WIN10一键禁用自带杀毒和自动更新小助手
  6. 解决textBox实时显示问题
  7. List数组和集合相互转换
  8. ios beta 描述文件下载地址
  9. 性能测试常用指标计算汇总
  10. Unity鼠标键盘事件