当前位置:主页 > java教程 > spring boot数据格式转换

spring boot前后端交互之数据格式转换问题

发布:2023-04-20 09:15:02 59


本站精选了一篇相关的编程文章,网友祖念烟根据主题投稿了本篇教程内容,涉及到spring、boot数据格式转换、spring、boot前后端交互、spring boot数据格式转换相关内容,已被191网友关注,下面的电子资料对本篇知识点有更加详尽的解释。

spring boot数据格式转换

在前后端分离开发的项目种,前端获取数据的方式基本都是通过Ajax。请求方法也有所不同,常见的有POST,GET,PUT,DELETE等。甚至连请求的数据类型都不一样,x-www-form-urlencodeed,form-data,json等。

那么在前后端交互过程中,具体的数据该如何接收呢?

json数据

{
 "id": 0,
  "address_id": 6,
  "detail_address": "我是11251111111",
  "user_id": 611111,
  "create_time": null,
  "update_time": null,
  "name": "测试人11111",
  "phone": "13378954789111"
}
@RequestMapping(value = "/add",method = RequestMethod.POST,produces = "application/json;charset=UTF-8")
 public ResponseData addUsers(@RequestBody UserInfo userInfo){
     if (StringUtils.isNotEmpty(userInfo.getAccount())){
         if (userInfoService.ifUserExist(userInfo.getAccount())){
             return ResponseData.error(500,"账户已存在,请重新设置!");
         }
     }
     System.out.println(userInfo.toString());
}

在这里插入图片描述

接收json数据的两个关键点:

  • json类型声明
produces = "application/json;charset=UTF-8"

@RequestMapping接口处声明传输类型未json。

  • @RequestBody声明Java Bean

json数据必须用对象接收,且必须用@RequestBody声明。

x-www-form-urlencodeed表单数据

在这里插入图片描述

表单数据有两种接收类型:

  • @RequestParam接收
    @RequestMapping(value = "/fuzzy",method = RequestMethod.POST)
    public ResponseData fuzzyQuery(@RequestParam("carType") Integer carTpe, @RequestParam("carStatus") Integer carStatus, @RequestParam("name") String name, @RequestParam("carNo") String carNo){
        //String name1 = "%"+name+"%";
        List<CarInfo> carInfos = carInfoService.fuzzySelect(carTpe, carStatus, name, carNo);
        return ResponseData.success(carInfos);
    }

使用@RequestParam的参数必须与传入的参数一致

  • 对象接收
    @RequestMapping(value = "/pageList",method = RequestMethod.POST)
    public ResponseData carPageList(CarInfoSelect carInfoSelect){
        IPage<CarInfoResult1> page = carInfoService.carPageList(carInfoSelect);
        //LayuiPageInfo pageInfo = LayuiPageFactory.createPageInfo(page);
        return ResponseData.success(page);
    }

传入的参数很多,将这些参数封装为一个java对象来接收,注意和josn数据的区别。

到此这篇关于spring boot前后端交互之数据格式转换的文章就介绍到这了,更多相关spring boot数据格式转换内容请搜索码农之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持码农之家!


参考资料

相关文章

  • SpringBoot如何用CXF集成WebService

    发布:2021-05-14

    这篇文章主要介绍了SpringBoot使用CXF集成WebService的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • SpringBoot读写操作yml配置文件方法

    发布:2023-04-25

    之前一直用的application.properties配置文件,只能是KV结构,后来的yml配置文件更像是树状结构,支持层级,比properties更灵活


  • Spring中最常用的注解之一@Autowired详解

    发布:2023-04-21

    本文讲解了Spring中最常用的注解之一@Autowired, 平时我们可能都是使用属性注入的,但是后续建议大家慢慢改变习惯,使用构造器注入。同时也讲解了这个注解背后的实现原理,需要的朋友可以参考下


  • Spring中BeanFactory FactoryBean和ObjectFactory的三种的区别

    发布:2023-04-26

    关于FactoryBean 和 BeanFactory的对比文章比较多,但是对ObjectFactory的描述就比较少,今天我们对比下这三种的区别,感兴趣的朋友跟随小编一起看看吧


  • SpringBoot2零基础到精通之自动配置底层分析及小技巧

    SpringBoot2零基础到精通之自动配置底层分析及小技巧

    发布:2022-10-21

    给网友们整理关于SpringBoot的教程,SpringBoot是一种整合Spring技术栈的方式(或者说是框架),同时也是简化Spring的一种快速开发的脚手架,本篇让我们一起学习自动配置的底层分析与一些开发中的小技巧


  • SpringBoot实现埋点监控

    发布:2023-03-03

    本文主要介绍了SpringBoot实现埋点监控,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧


  • 详解java 中Spring jsonp 跨域请求的实例

    详解java 中Spring jsonp 跨域请求的实例

    发布:2022-10-20

    为网友们分享了关于java的教程,这篇文章主要介绍了详解java 中Spring jsonp 跨域请求的实例的相关资料,jsonp 可用于解决主流浏览器的跨域数据访问的问题,需要的朋友可以参考下


  • 如何在IDE部署springboot项目(有swagger和无swagger都是一样的)到服务器或者虚拟机上的docker

    发布:2023-03-04

    这篇文章主要介绍了如何在IDE部署springboot项目(有swagger和无swagger都是一样的)到服务器或者虚拟机上的docker,本文给大家分享我的安装历程,需要的朋友可以参考下


网友讨论