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 22 Java/Android
详细了解MVC+proxy
Jul 09 Java/Android
SSM项目使用拦截器实现登录验证功能
Jan 22 Java/Android
java objectUtils 使用可能会出现的问题
Feb 28 Java/Android
Netty分布式客户端接入流程初始化源码分析
Mar 25 Java/Android
Android Rxjava3 使用场景详解
Apr 07 Java/Android
Elasticsearch Recovery 详细介绍
Apr 19 Java/Android
Springboot-cli 开发脚手架,权限认证,附demo演示
Apr 28 Java/Android
java版 简单三子棋游戏
May 04 Java/Android
Ubuntu18.04下QT开发Android无法连接设备问题解决实现
Jun 01 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二分法在IP地址查询中的应用
2008/08/12 PHP
php 读取shell管道传输过来的内容
2010/03/01 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
2011/07/14 PHP
PHP版网站缓存加快打开速度的方法分享
2012/06/03 PHP
浅析PHP绘图技术
2013/07/03 PHP
使用配置类定义Codeigniter全局变量
2014/06/12 PHP
php简单统计在线人数的方法
2016/05/10 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
2017/02/15 PHP
PHP计算近1年的所有月份
2017/03/13 PHP
PHP 判断字符串是中文还是英文, 或者是中英混合
2021/03/09 PHP
JavaScript设计模式初探
2016/01/07 Javascript
jquery选择器中的空格与大于号&gt;、加号+与波浪号~的区别介绍
2016/06/24 Javascript
浅谈jQuery为哪般去掉了浏览器检测
2016/08/29 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
canvas实现图像布局填充功能
2017/02/06 Javascript
使用node搭建自动发图文微博机器人的方法
2019/03/22 Javascript
Vue使用.sync 实现父子组件的双向绑定数据问题
2019/04/04 Javascript
vue实现输入框自动跳转功能
2020/05/20 Javascript
javascript实现电商放大镜效果
2020/11/23 Javascript
django模型中的字段和model名显示为中文小技巧分享
2014/11/18 Python
Python基础入门之seed()方法的使用
2015/05/15 Python
Python中返回字典键的值的values()方法使用
2015/05/22 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python机器人行走步数问题的解决
2018/01/29 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Python基础之文件读取的讲解
2019/02/16 Python
Python反爬虫伪装浏览器进行爬虫
2020/02/28 Python
python ETL工具 pyetl
2020/06/07 Python
利用CSS3实现动态的二级三级菜单效果实例源码
2017/01/04 HTML / CSS
一款纯css3实现的动画加载导航
2014/10/08 HTML / CSS
西班牙香水和化妆品网上商店:Douglas
2017/10/29 全球购物
美国棒球装备和用品商店:Baseball Savings
2018/06/09 全球购物
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
英语教师岗位职责
2014/03/16 职场文书
2014年社区工作总结
2014/11/18 职场文书