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 相关文章推荐
源码解读Spring-Integration执行过程
Jun 11 Java/Android
Springboot如何使用logback实现多环境配置?
Jun 16 Java/Android
SpringBoot2 参数管理实践之入参出参与校验的方式
Jun 16 Java/Android
死磕 java同步系列之synchronized解析
Jun 28 Java/Android
分析并发编程之LongAdder原理
Jun 29 Java/Android
Java使用jmeter进行压力测试
Jul 09 Java/Android
gateway与spring-boot-starter-web冲突问题的解决
Jul 16 Java/Android
SpringBoot2零基础到精通之数据与页面响应
Mar 22 Java/Android
零基础学java之方法的定义与调用详解
Apr 10 Java/Android
Android 界面一键变灰 深色主题工具类
Apr 28 Java/Android
Java实现注册登录跳转
Jun 16 Java/Android
Java实现HTML转为Word的示例代码
Jun 28 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实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
php中filter函数验证、过滤用户输入的数据
2014/01/13 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
PHP基于单例模式编写PDO类的方法
2016/09/13 PHP
解javascript 混淆加密收藏
2009/01/16 Javascript
JavaScript prototype属性使用说明
2010/05/13 Javascript
使用jquery实现图文切换效果另加特效
2013/01/20 Javascript
JS完成代码前最好对其做5件事
2013/04/07 Javascript
JQuery页面的表格数据的增加与分页的实现
2013/12/10 Javascript
js获取某元素的class里面的css属性值代码
2014/01/16 Javascript
js实现双击图片放大单击缩小的方法
2015/02/17 Javascript
jQuery实现冻结表格行和列
2015/04/29 Javascript
jQuery soColorPacker 网页拾色器
2016/06/22 Javascript
JS实现本地存储信息的方法(基于localStorage与userData)
2017/02/18 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
详解Vue中一种简易路由传参办法
2017/09/15 Javascript
jQuery实现动态控制页面元素的方法分析
2017/12/20 jQuery
react 中父组件与子组件双向绑定问题
2019/05/20 Javascript
基于vue的tab-list类目切换商品列表组件的示例代码
2020/02/14 Javascript
基于JS实现快速读取TXT文件
2020/08/25 Javascript
在Vue中获取自定义属性方法:data-id的实例
2020/09/09 Javascript
[03:01]DOTA2英雄基础教程 露娜
2014/01/07 DOTA
使用python脚本实现查询火车票工具
2018/07/19 Python
python+openCV调用摄像头拍摄和处理图片的实现
2019/08/06 Python
美国农场鲜花速递:The Bouqs
2018/07/13 全球购物
超市营业员岗位职责
2013/12/20 职场文书
保安拾金不昧表扬信
2014/01/15 职场文书
银行优秀员工事迹材料
2014/05/29 职场文书
积极向上的团队口号
2014/06/06 职场文书
大学生党校培训心得体会
2014/09/11 职场文书
四风问题个人对照检查材料
2014/09/26 职场文书
2015年采购工作总结
2015/04/10 职场文书
六年级情感作文之500字
2019/10/23 职场文书
经典哲理警句:志不真则心不热,心不热则功不贤
2019/11/14 职场文书
导游词之重庆渣滓洞
2020/01/08 职场文书
Vue Element plus使用方法梳理
2022/12/24 Vue.js