需求说明:公司使用Swagger(接口文档在线生成工具),为了让前端同事更好的了解传入参数的详细情况,应用项目中接口(eg:分页查询接口)中使用dto对象来接受前端传入的参数,但是后面中心项目中接口是用json字符串接受的,也就是说需要把dto对象转为JSON字符串,这时JSON.toJSONString()就用上了。

应用项目接口:

/**
* 分页查询xxx列表
* @param pageNum 起始页
* @param pageSize 每一页的记录数
* @return RestResponse<PageInfo<BandRespDto>>
*/
@ApiOperation(value = "分页查询xxx信息列表", notes = "分页查询xxx信息列表")
@ApiImplicitParams({
   @ApiImplicitParam(name = "pageNum", value = "起始页", dataType = "integer", paramType = "query"),
   @ApiImplicitParam(name = "pageSize", value = "每一页的记录数", dataType = "integer", paramType = "query")
})
@GetMapping(value = {"/list"}, produces = "application/json")
RestResponse<PageInfo<BandRespDto>> queryBandListByPage(
              @Validated BandCreateReqDto bandCreateReqDto,
              @RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize){
return iBandService.queryBandListByPage(bandCreateReqDto,pageNum, pageSize);
}

中心项目接口:

/**
* 分页查询xxx列表
*
* @param filters 查询参数(json格式)
* @param pageNum 分页页码
* @param pageSize 分页行数
* @return RestResponse<PageInfo<BandRespDto>>
*/
@GetMapping(value = {"/list"}, produces = "application/json")
@ApiImplicitParams({
@ApiImplicitParam(name = "filter", value = "查询参数(json格式字符串)", dataType = "string", paramType = "query"),
@ApiImplicitParam(name = "pageNum", value = "当前页码", dataType = "integer", paramType = "query"),
@ApiImplicitParam(name = "pageSize", value = "分页行数", dataType = "integer", paramType = "query")
})
@ApiOperation(value = "分页查询xxx列表", notes = "分页查询xxx列表")
RestResponse<PageInfo<BandRespDto>> queryBandListByPage(
             @RequestParam(name = "filter") String filter,
             @RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize);
}

使用JSON.toJSONString()

@Override
public RestResponse<PageInfo<BandRespDto>> queryBandListByPage(BandCreateReqDto bandCreateReqDto, Integer pageNum, Integer pageSize) {
return bandQueryApi.queryBandListByPage(JSON.toJSONString(bandCreateReqDto),pageNum, pageSize);
}
 

项目实战--JSON.toJSONString()的更多相关文章

  1. 【无私分享:ASP.NET CORE 项目实战(第六章)】读取配置文件(一) appsettings.json

    目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 在我们之前的Asp.net mvc 开发中,一提到配置文件,我们不由的想到 web.config 和 app.config,在 ...

  2. Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类

    本文目录 1.  前沿 2.CacheHelper基于Microsoft.Extensions.Caching.Memory封装 3.XmlHelper快速操作xml文档 4.Serializatio ...

  3. 【腾讯Bugly干货分享】React Native项目实战总结

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...

  4. Asp.Net Core 项目实战之权限管理系统(0) 无中生有

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  5. Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  6. Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  7. Asp.Net Core 项目实战之权限管理系统(5) 用户登录

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  8. Asp.Net Core 项目实战之权限管理系统(6) 功能管理

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  9. Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

随机推荐

  1. JAVA课堂题目--递归来判断回数

    package class20190923; import java.util.Scanner; public class Classtext { private static int n=0; pr ...

  2. Oracle函数使用1

    一.字符串处理函数 1.ascii(x):返回字符的ASCII. SQL语句:select ascii('a') from dual; dual:空表,每创建一个用户都会生成这样一个dual表,表中只 ...

  3. 原生js之事件解绑

    #removeEventListener ##html <button id='btn'>click</button> ##js ###第一种方式(错误方式) var btn ...

  4. EditPlus各个版本的注册码,亲测可用

    原文链接:https://www.cnblogs.com/shihaiming/p/6422441.html EditPlus4注册码 注册名:host1991    序列号:14F50-CD5C8- ...

  5. WPS PDF转Word工具

    WPS PDF转Word工具链接:https://pan.baidu.com/s/1Ijh5MSBWZtsXsm05_6yYvw 提取码:gufy  下载运行后会解压到"D:\Program ...

  6. Windows版 charles安装证书抓包网页HTTPS

    1.在Charles官网https://www.charlesproxy.com/download/下载,我这边下载的是免费体验版的. 2.安装好以后打开,配置Charles证书:选择 help--S ...

  7. 使用uniapp开发项目来的几点心得体会,供新手参考参考

    先说一下提前须要会的技术 要想快速入手uniapp的话,你最好提前学会vue.微信小程序开发,因为它几乎就是这两个东西的结合体,不然,你就只有慢慢研究吧. 为什么要选择uniapp??? 开发多个平台 ...

  8. 20201213-1 HTML基本标签(一)

    > HTML 基本结构 <> </> 标签对   > 一个 HTML 文档由 4 个基本部分组成: 文档声明:<!DOCTYPE HTML>声明这是一个 ...

  9. ReentrantReadWriterLock源码(state设计、读写锁、共享锁、独占锁及锁降级)

    ReentrantReadWriterLock 读写锁类图(截图来源https://blog.csdn.net/wangbo199308/article/details/108688148) stat ...

  10. [日常摸鱼]bzoj3122 [Sdoi]2013 随机数生成器

    又是写了一晚上才过的题- 题意:有一个数列$x_n=(ax_{n-1}+b) mod p$,给你$x_1,a,b,p,t$,求最小的$x_i=t$的$i$,可能不存在 一开始很自然的推出了式子$x_n ...