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 18 Java/Android
springBoot基于webSocket实现扫码登录
Jun 22 Java/Android
JUnit5常用注解的使用
Jul 02 Java/Android
JavaGUI模仿QQ聊天功能完整版
Jul 04 Java/Android
Java移除无效括号的方法实现
Aug 07 Java/Android
IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署
Sep 25 Java/Android
springboot 自定义配置 解决Boolean属性不生效
Mar 18 Java/Android
Spring依赖注入多种类型数据的示例代码
Mar 31 Java/Android
教你在 Java 中实现 Dijkstra 最短路算法的方法
Apr 08 Java/Android
Java Spring Boot 正确读取配置文件中的属性的值
Apr 20 Java/Android
springboot实现string转json json里面带数组
Jun 16 Java/Android
Java使用HttpClient实现文件下载
Aug 14 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中的数组操作函数整理
2008/08/18 PHP
php使用curl存储cookie的示例
2014/03/31 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
Laravel中七个非常有用但很少人知道的Carbon方法
2017/09/21 PHP
laravel清除视图缓存的代码
2019/10/23 PHP
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
Javascript操作表单实例讲解(下)
2016/06/20 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
jQuery文字轮播特效
2017/02/12 Javascript
详解Vue-cli代理解决跨域问题
2017/09/27 Javascript
vue debug 二种方法
2018/09/16 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
JS原生瀑布流效果实现
2019/04/26 Javascript
Python中的is和id用法分析
2015/01/26 Python
浅谈Python中chr、unichr、ord字符函数之间的对比
2016/06/16 Python
python使用xlrd与xlwt对excel的读写和格式设定
2017/01/21 Python
详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
2019/02/25 Python
Django保护敏感信息的方法示例
2019/05/09 Python
python-tkinter之按钮的使用,开关方法
2019/06/11 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
2019/12/09 Python
Python使用turtle库绘制小猪佩奇(实例代码)
2020/01/16 Python
基于keras输出中间层结果的2种实现方式
2020/01/24 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
微信html5页面调用第三方位置导航的示例
2018/03/14 HTML / CSS
工程建设实施方案
2014/03/14 职场文书
如何写求职信
2014/05/24 职场文书
2014市府办领导班子“四风问题”对照检查材料思想汇报
2014/09/24 职场文书
大专毕业生自我鉴定范文(2篇)
2014/09/27 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
2016应届毕业生实习心得体会
2015/10/09 职场文书
pytorch锁死在dataloader(训练时卡死)
2021/05/28 Python
MySQL示例讲解数据库约束以及表的设计
2022/06/16 MySQL