美文网首页
第四篇: spring-boot中的restful请求输入和输出

第四篇: spring-boot中的restful请求输入和输出

作者: LOC_Thomas | 来源:发表于2017-03-23 13:46 被阅读0次

前言

现在restful是流行的通信方式,利用restful+json的形式来完成后端服务的请求,这篇文章主要简单介绍一下常用的输入请求,并且以json的方式返回数据。

请求

  1. 常用的请求方式有GET、POST、PUT三种方式。
  2. 通过 @RequestMapping注解可以通过path参数声明请求的路径, method参数来声明请求的方式,consumes参数来声明request的类型,produces参数来声明response的类型。
  3. 通过 @RequestParam注解来表明GET、POST、PUT请求的参数。
  4. 通过 @RequestHeader 注解来表明请求头参数。
  5. 通过 @PathParam 注解来表明restful形式的path路径参数。
  6. 通过 @ModelAttribute 来把传入的参数转换成对象的形式。

利用gson构造json数据返回

  1. spring-boot默认使用jackson方式来构造json数据,但是我们想要使用gson,就首先需要在pom.xml加入gson依赖的同时,排除jackson依赖。
  2. 在Application类通过 @EnableAutoConfiguration(exclude = {JacksonAutoConfiguration.class }) 来排除掉jackson的序列化。
  3. 创建一个HttpMessageConverters来利用gson进行object到json的转换
@Bean
  public HttpMessageConverters gsonConverters() {
    Collection<HttpMessageConverter<?>> messageConverters = new ArrayList<>();

    final Gson gson = new GsonBuilder()
        .excludeFieldsWithoutExposeAnnotation()
//        .setExclusionStrategies(new GsonExclusionStrategy())
//        .serializeNulls()
        .create();

    GsonHttpMessageConverter gsonHttpMessageConverter = new GsonHttpMessageConverter();
    gsonHttpMessageConverter.setGson(gson);

    messageConverters.add(gsonHttpMessageConverter);
    return new HttpMessageConverters(true, messageConverters);
  }

其中可以设置gson的行为和属性

  1. 然后在对象里面通过gson提供的注解完成需要完成的事情

传入参数的验证

可以参考之前写的一篇文章,关于利用《使用validator-api来验证spring-boot的参数》的文章: http://www.jianshu.com/p/2c2da2adef81

相关的代码地址:

https://github.com/dragontree101/spring-boot-tutorials/tree/master/spring-boot-tutorial-02

相关文章

  • 第四篇: spring-boot中的restful请求输入和输出

    前言 现在restful是流行的通信方式,利用restful+json的形式来完成后端服务的请求,这篇文章主要简单...

  • SpringBoot快速开发Restful Api

    Spring-Boot Restful Api 1、Restful API开发 1.1 Restful简介 spr...

  • Requests05.请求类型&请求参数

    一、请求类型 requests支持restful规范的常用请求方式 restful规范的常用请求方式:GET:读取...

  • SpringMVC Controller接收json参数 (re

    和前端做接口对接时,发现前端传的参数后端收不到。后端是spring-boot的restful 。 经过调试发现...

  • AFNetwork - Request模块解析

    主题: 网络请求模块(输入、输出)。 概要: 根据不同入参, 返回对应的数据格式request。 request中...

  • java IO流

    简介 java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作。在java中把不同的输入/输出源(...

  • D4 --- 后端入门

    D4 主要内容 project Restful API Spring-Boot 入门 地址 主页 代码 Eclip...

  • C++ 学习笔记之——输入和输出

    在 C++ 中,我们通过调用输入输出流库中的流对象 cin 和 cout 来实现输入和输出。 在用 cin 进行输...

  • 输入和输出

    输入 用print(),括号中为输出内容,代码实现如下: 输出 用input(),可以输入字符,并放在一个变量里,...

  • 输入和输出

    勤学如春起之苗,不见其增,日见其长 辍学入磨刀之石,不见其减,日有所亏。 微教育渗透在生活的点点滴滴,学习的过程在...

网友评论

      本文标题:第四篇: spring-boot中的restful请求输入和输出

      本文链接:https://www.haomeiwen.com/subject/vxpanttx.html