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利用redis、Redisson处理并发问题的操作
Jun 18 Java/Android
详细了解java监听器和过滤器
Jul 09 Java/Android
Java 实战项目之家居购物商城系统详解流程
Nov 11 Java/Android
SpringDataJPA在Entity中常用的注解介绍
Dec 06 Java/Android
mybatis源码解读之executor包语句处理功能
Feb 15 Java/Android
Java并发编程之原子性-Atomic的使用
Mar 16 Java/Android
springboot应用服务启动事件的监听实现
Apr 06 Java/Android
教你在 Java 中实现 Dijkstra 最短路算法的方法
Apr 08 Java/Android
详解Flutter网络请求Dio库的使用及封装
Apr 14 Java/Android
java版 简单三子棋游戏
May 04 Java/Android
Java 多线程协作作业之信号同步
May 11 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 信息采集程序代码
2009/03/17 PHP
PHP入门学习笔记之一
2010/10/12 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
2014/08/25 PHP
微信封装的调用微信签名包的类库
2017/06/08 PHP
PHP创建自己的Composer包方法
2018/04/09 PHP
baidu博客的编辑友情链接的新的层窗口!经典~支持【FF】
2007/02/09 Javascript
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
jQuery实现的鼠标滑过弹出放大图片特效
2016/01/08 Javascript
JavaScript获取图片像素颜色并转换为box-shadow显示
2016/03/11 Javascript
AngularJS之ionic 框架下实现 Localstorage本地存储
2017/04/22 Javascript
iscroll-probe实现下拉刷新和下拉加载效果
2017/06/28 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
js+html5实现手机九宫格密码解锁功能
2018/07/30 Javascript
Angular7.2.7路由使用初体验
2019/03/01 Javascript
axios如何利用promise无痛刷新token的实现方法
2019/08/27 Javascript
vue-cli —— 如何局部修改Element样式
2020/10/22 Javascript
简单介绍利用TK在Python下进行GUI编程的教程
2015/04/13 Python
Django自定义认证方式用法示例
2017/06/23 Python
Python实现爬取百度贴吧帖子所有楼层图片的爬虫示例
2018/04/26 Python
python清除字符串前后空格函数的方法
2018/10/21 Python
详解Python读取yaml文件多层菜单
2019/03/23 Python
Python pandas用法最全整理
2019/08/04 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
python3.6环境下安装freetype库和基本使用方法(推荐)
2020/05/10 Python
python 实现一个简单的线性回归案例
2020/12/17 Python
Lentiamo丹麦:购买便宜的隐形眼镜
2021/01/13 全球购物
Python文件操作的面试题
2013/06/22 面试题
教师评语大全
2014/04/28 职场文书
法英专业大学生职业生涯规划范文:衡外情,量己力!
2014/09/23 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书
领导干部群众路线对照检查材料
2014/11/05 职场文书
导游词之青岛崂山
2019/12/27 职场文书
Mysql数据库按时间点恢复实战记录
2021/06/30 MySQL
Java实现给Word文件添加文字水印
2022/02/15 Java/Android