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
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
Jun 26 Java/Android
Spring Boot 启动、停止、重启、状态脚本
Jun 26 Java/Android
spring boot项目application.properties文件存放及使用介绍
Jun 30 Java/Android
Java后台生成图片的完整步骤
Aug 04 Java/Android
InterProcessMutex实现zookeeper分布式锁原理
Mar 21 Java/Android
Netty分布式客户端处理接入事件handle源码解析
Mar 25 Java/Android
Java工作中实用的代码优化技巧分享
Apr 21 Java/Android
SpringBoot 集成短信和邮件 以阿里云短信服务为例
Apr 22 Java/Android
Java数据结构之堆(优先队列)
May 20 Java/Android
Java界面编程实现界面跳转
Jun 16 Java/Android
SpringCloud中分析讲解Feign组件添加请求头有哪些坑梳理
Jun 21 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脚本代码
2011/02/19 PHP
CI(CodeIgniter)框架中的增删改查操作
2014/06/10 PHP
用PHP代替JS玩转DOM的思路及示例代码
2014/06/15 PHP
PHP扩展框架之Yaf框架的安装与使用
2016/05/18 PHP
PHP排序二叉树基本功能实现方法示例
2018/05/26 PHP
php查询内存信息操作示例
2019/05/09 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
PHP实现简单的协程任务调度demo示例
2020/02/01 PHP
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
自动设置iframe大小的jQuery代码
2013/09/11 Javascript
jquery根据属性和index来查找属性值并操作
2014/07/25 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
Postman模拟发送带token的请求方法
2018/03/31 Javascript
JavaScript设计模式之装饰者模式定义与应用示例
2018/07/25 Javascript
vue.js添加一些触摸事件以及安装fastclick的实例
2018/08/28 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
uniapp微信小程序实现一个页面多个倒计时
2020/11/01 Javascript
js实现筛选功能
2020/11/24 Javascript
Python continue语句用法实例
2014/03/11 Python
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
Python开发微信公众平台的方法详解【基于weixin-knife】
2017/07/08 Python
python如何重载模块实例解析
2018/01/25 Python
pandas实现选取特定索引的行
2018/04/20 Python
Python3.6连接Oracle数据库的方法详解
2018/05/18 Python
利用Python如何生成便签图片详解
2018/07/09 Python
python利用小波分析进行特征提取的实例
2019/01/09 Python
python画图的函数用法以及技巧
2019/06/28 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
python实现文法左递归的消除方法
2020/05/22 Python
优秀管理者事迹材料
2014/05/22 职场文书
幼儿园迎国庆65周年活动策划方案
2014/09/16 职场文书
基层党员对照检查材料
2014/09/24 职场文书
同事欢送会致辞
2015/07/31 职场文书
导游词之黄果树瀑布
2019/09/20 职场文书
2019幼儿教师求职信(3篇)
2019/09/20 职场文书
HTML5 语义化标签(移动端必备)
2021/08/23 HTML / CSS