swagger如何返回map字段注释


Posted in Java/Android onJuly 03, 2021

1.效果图如下:

swagger如何返回map字段注释

2.controller层代码:

import java.util.HashMap;
import java.util.Map; 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; 
import com.mengyoou.core.serialize.ResponseMsg; 
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses; 
 
@Api(value="返回字段添加注释信息controller",tags={"返回字段添加注释信息controller"})
@RestController
public class TestController { 
	@ApiOperation(value="返回字段添加注释信息", notes="返回字段添加注释信息")
    @RequestMapping(value={"demo"}, method={RequestMethod.GET})
    @ApiResponses({
    	@ApiResponse(code = 200, message = "ok", response=User.class),
    })
    public ResponseMsg demo() {
    	User user = new User();
    	Map<String, Object> map = new HashMap<>();
    	map.put("user", user);
    	return new ResponseMsg(map);
    } 
}

3.用户实体的代码:

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;  
@ApiModel(value="登录成功后返回的个人信息")
@Data
public class User {
	
	    @ApiModelProperty(value="用户名")
	    private String userName;//用户名
	    @ApiModelProperty(value="密码")
	    private String password;//用户名 
}

4.关键点:

swagger如何返回map字段注释

接口 Swagger 显示返回模型的注释

mark:环境看之前文章

目的:web api controller 调用 asp.net mvc controller,让swagger里面的返回模型支持注释

关键:对返回消息类的封装,返回数据为泛型,swagger就能显示model的注释了

JsonMsg

/// <summary>
/// 返回消息
/// </summary>
public class JsonMsg<T> where T : class
{
    /// <summary>
    /// 状态码
    /// </summary>
    public int code { get; set; }
    /// <summary>
    /// 消息
    /// </summary>
    public string msg { get; set; }
    /// <summary>
    /// 内容
    /// </summary>
    public T obj { get; set; }
    /// <summary>
    /// 图标
    /// </summary>
    public int icon { get; set; }
    public static JsonMsg<T> OK(T obj, string msg = "成功") 
    {
        return new JsonMsg<T>() { code = 1, msg = msg, obj = obj, icon = 1 };
    }
    public static JsonMsg<T> Error(T obj, string msg = "失败")
    {
        return new JsonMsg<T>() { code = 0, msg = msg, obj = obj, icon = 1 };
    }
}

OrderDto

public class OrderDto
{
    public string Name { get; set; }
}

HomeController

public JsonResult GetOrderInfo()
{
    var order = new OrderDto { Name = "203022200" };
    return Json(order);
}

HomeAPIController

[AllowAnonymous]
public JsonMsg<OrderDto> testResultDataDesc3()
{
    HomeController controller = GetController<HomeController>();
    var d = (OrderDto)controller.GetOrderInfo().Data;
    return JsonMsg<OrderDto>.OK(d);
}

效果

swagger如何返回map字段注释

swagger如何返回map字段注释

swagger如何返回map字段注释

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
springboot中一些比较常用的注解总结
Jun 11 Java/Android
Java内存模型之happens-before概念详解
Jun 13 Java/Android
Java并发编程之Executor接口的使用
Jun 21 Java/Android
mybatis3中@SelectProvider传递参数方式
Aug 04 Java/Android
深入解读Java三大集合之map list set的用法
Nov 11 Java/Android
关于MybatisPlus配置双数据库驱动连接数据库问题
Jan 22 Java/Android
Java实现学生管理系统(IO版)
Feb 24 Java/Android
Spring事务管理下synchronized锁失效问题的解决方法
Mar 31 Java/Android
Java字符缓冲流BufferedWriter
Apr 09 Java/Android
Spring Data JPA框架自定义Repository接口
Apr 28 Java/Android
mybatis-plus模糊查询指定字段
Apr 28 Java/Android
Java实现超大Excel文件解析(XSSF,SXSSF,easyExcel)
Jul 15 Java/Android
Springboot配置suffix指定mvc视图的后缀方法
java基础——多线程
JUnit5常用注解的使用
Jul 02 #Java/Android
解决Swagger2返回map复杂结构不能解析的问题
SpringBoot工程下使用OpenFeign的坑及解决
Jul 02 #Java/Android
SpringBoot读取Resource下文件的4种方法
Jul 02 #Java/Android
Java基础-封装和继承
You might like
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
PHP连接局域网MYSQL数据库的简单实例
2013/08/26 PHP
php不用正则验证真假身份证
2013/11/06 PHP
PHP调用wsdl文件类型的接口代码分享
2014/11/19 PHP
php把大写命名转换成下划线分割命名
2015/04/27 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
2016/01/08 PHP
简单理解PHP的面向对象编程方式
2016/05/17 PHP
PHP中ajax无刷新上传图片与图片下载功能
2017/02/21 PHP
PHP fclose函数用法总结
2019/02/15 PHP
PHP实现数组向任意位置插入,删除,替换数据操作示例
2019/04/05 PHP
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
js 数据类型转换总结笔记
2011/01/17 Javascript
js 连接数据库如何操作数据库中的数据
2012/11/23 Javascript
JS替换文本域内的回车示例
2014/02/18 Javascript
javascript制作的cookie封装及使用指南
2015/01/02 Javascript
jQuery控制cookie过期时间的方法
2015/04/07 Javascript
解决js函数闭包内存泄露问题的办法
2016/01/25 Javascript
js print打印网页指定区域内容的简单实例
2016/11/01 Javascript
Javascript中字符串和数字的操作方法整理
2017/01/22 Javascript
微信小程序 开发经验整理
2017/02/15 Javascript
jQuery插件HighCharts绘制2D金字塔图效果示例【附demo源码下载】
2017/03/09 Javascript
nodejs批量下载图片的实现方法
2017/05/19 NodeJs
Material(包括Material Icon)在Angular2中的使用详解
2018/02/11 Javascript
微信小程序-form表单提交代码实例
2019/04/29 Javascript
JS图片预加载三种实现方法解析
2020/05/08 Javascript
[55:11]完美世界DOTA2联赛PWL S2 SZ vs LBZS 第一场 11.26
2020/11/30 DOTA
使用Python读取大文件的方法
2018/02/11 Python
Python3.遍历某文件夹提取特定文件名的实例
2018/04/26 Python
原生python实现knn分类算法
2019/10/24 Python
python单向循环链表原理与实现方法示例
2019/12/03 Python
CSS3中的transform属性进行2D和3D变换的基本用法
2016/05/12 HTML / CSS
英语专业学子个人的自我评价
2013/10/02 职场文书
公司门卫的岗位职责
2014/02/19 职场文书
不服劳动仲裁起诉书
2015/05/20 职场文书
医学会议开幕词
2016/03/03 职场文书
eval(cmd)与eval($cmd)的区别与联系
2021/07/07 PHP