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框架入门之简单介绍SpringBoot框架
Jun 18 Java/Android
看完这篇文章获得一些java if优化技巧
Jul 15 Java/Android
SpringBoot整合Mybatis Generator自动生成代码
Aug 23 Java/Android
Eclipse+Java+Swing+Mysql实现电影购票系统(详细代码)
Jan 18 Java/Android
关于Mybatis中SQL节点的深入解析
Mar 19 Java/Android
Spring this调用当前类方法无法拦截的示例代码
Mar 20 Java/Android
Android自定义scrollview实现回弹效果
Apr 01 Java/Android
Java 垃圾回收超详细讲解记忆集和卡表
Apr 08 Java/Android
JavaWeb Servlet开发注册页面实例
Apr 11 Java/Android
Mybatis-Plus 使用 @TableField 自动填充日期
Apr 26 Java/Android
java中如何截取字符串最后一位
Jul 07 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中的float类型使用说明
2010/07/27 PHP
php empty()与isset()区别的详细介绍
2013/06/17 PHP
PHPUnit安装及使用示例
2014/10/29 PHP
php实现的一段简单概率相关代码
2016/05/30 PHP
laravel7学习之无限级分类的最新实现方法
2020/09/30 PHP
最短的IE判断代码
2011/03/13 Javascript
基于jquery &amp; json的省市区联动代码
2012/06/26 Javascript
Jquery绑定事件(bind和live的区别介绍)
2013/08/23 Javascript
nodejs读取memcache示例分享
2014/01/02 NodeJs
jquery实现华丽的可折角广告代码
2015/09/02 Javascript
解决js图片加载时出现404的问题
2020/11/30 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
JavaScript实现拖拽元素对齐到网格(每次移动固定距离)
2016/11/30 Javascript
如何用原生js写一个弹窗消息提醒插件
2019/05/24 Javascript
Vue.set 全局操作简单示例
2019/09/19 Javascript
[01:00:59]VP VS VG Supermajor小组赛胜者组第二轮 BO3第二场 6.2
2018/06/03 DOTA
Python进程通信之匿名管道实例讲解
2015/04/11 Python
Python书单 不将就
2017/07/11 Python
利用Python如何生成便签图片详解
2018/07/09 Python
使用Python三角函数公式计算三角形的夹角案例
2020/04/15 Python
keras 自定义loss损失函数,sample在loss上的加权和metric详解
2020/05/23 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
python 使用csv模块读写csv格式文件的示例
2020/12/02 Python
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
日常奢侈品,轻松购物:Verishop
2019/08/20 全球购物
西班牙用户之间买卖视频游戏的平台:Wakkap
2020/03/21 全球购物
美国新娘礼品店:The Paisley Box
2020/09/08 全球购物
医院护士专业个人的求职信
2013/12/09 职场文书
安全责任书范本
2014/04/15 职场文书
经济信息系毕业生自荐信
2014/06/02 职场文书
教师节感想
2015/08/11 职场文书
初中生物教学随笔
2015/08/15 职场文书
vue实现可拖拽的dialog弹框
2021/05/13 Vue.js
Java并发编程之Executor接口的使用
2021/06/21 Java/Android