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 相关文章推荐
Java方法重载和方法重写的区别到底在哪?
Jun 11 Java/Android
Java elasticsearch安装以及部署教程
Jun 28 Java/Android
关于@OnetoMany关系映射的排序问题,使用注解@OrderBy
Dec 06 Java/Android
解析探秘fescar分布式事务实现原理
Feb 28 Java/Android
Spring依赖注入多种类型数据的示例代码
Mar 31 Java/Android
解决springboot druid数据库连接失败后一直重连的方法
Apr 19 Java/Android
Java对文件的读写操作方法
Apr 29 Java/Android
Android 中的类文件和类加载器详情
Jun 05 Java/Android
Java 多线程并发FutureTask
Jun 28 Java/Android
一文了解Java动态代理的原理及实现
Jul 07 Java/Android
SpringBoot Http远程调用的方法
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中inlcude()性能对比详解
2012/09/16 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
PHP filesize函数用法浅析
2019/02/15 PHP
IE8 原生JSON支持
2009/04/13 Javascript
jqPlot Option配置对象详解
2009/07/25 Javascript
Jquery 高亮显示文本中重要的关键字
2009/12/24 Javascript
Jquery弹出窗口插件 LeanModal的使用方法
2012/03/10 Javascript
解决jquery中美元符号命名冲突问题
2014/01/08 Javascript
浅谈JavaScript函数节流
2014/12/09 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
Node.js操作mysql数据库增删改查
2016/03/30 Javascript
使用js获取地址栏参数的方法推荐(超级简单)
2016/06/14 Javascript
javascript实现table单元格点击展开隐藏效果(实例代码)
2017/04/10 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
2017/07/17 jQuery
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
代码详解JS操作剪贴板
2018/02/11 Javascript
Angular CLI在Angular项目中如何使用scss详解
2018/04/10 Javascript
JavaScript引用类型Function实例详解
2018/08/09 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
解决vue数据不实时更新的问题(数据更改了,但数据不实时更新)
2020/10/27 Javascript
Python中map和列表推导效率比较实例分析
2015/06/17 Python
基于Python代码编辑器的选用(详解)
2017/09/13 Python
python爬虫爬取某网站视频的示例代码
2021/02/20 Python
英国领先的男装设计师服装购物网站:Mainline Menswear
2018/02/04 全球购物
世界排名第一的万圣节服装店:Spirit Halloween
2018/10/16 全球购物
Oracle中delete,truncate和drop的区别
2016/05/05 面试题
白血病募捐倡议书
2014/05/14 职场文书
学校运动会广播稿100条
2014/09/14 职场文书
餐厅感恩节活动策划方案
2014/10/11 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
2015年机关后勤工作总结
2015/05/26 职场文书
《圆的周长》教学反思
2016/02/17 职场文书
2016年学校禁毒宣传活动工作总结
2016/04/05 职场文书
2016年第104个国际护士节活动总结
2016/04/06 职场文书
解决mysql模糊查询索引失效问题的几种方法
2021/06/18 MySQL