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
Java多条件判断场景中规则执行器的设计
Jun 26 Java/Android
Java练习之潜艇小游戏的实现
Mar 16 Java/Android
Java 超详细讲解设计模式之中的抽象工厂模式
Mar 25 Java/Android
Spring Boot DevTools 全局配置学习指南
Mar 31 Java/Android
Android Flutter实现3D动画效果示例详解
Apr 07 Java/Android
Java 常见的限流算法详细分析并实现
Apr 07 Java/Android
java中为什么说子类的构造方法默认访问的是父类的无参构造方法
Apr 13 Java/Android
Java工作中实用的代码优化技巧分享
Apr 21 Java/Android
SpringBoot使用AOP实现统计全局接口访问次数详解
Jun 16 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
Zend公司全球首推PHP认证
2006/10/09 PHP
用PHP生成html分页列表的代码
2007/03/18 PHP
PHP中防止SQL注入攻击和XSS攻击的两个简单方法
2010/04/15 PHP
PHP函数extension_loaded()用法实例
2015/01/19 PHP
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
2007/10/23 Javascript
固定表格行列(expression)在IE下适用
2013/07/25 Javascript
jquery给图片添加鼠标经过时的边框效果
2013/11/12 Javascript
jQuery遍历json中多个map的方法
2015/02/12 Javascript
jquery+ajax请求且带返回值的代码
2015/08/12 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
Function.prototype.apply()与Function.prototype.call()小结
2016/04/27 Javascript
浅谈JavaScript的全局变量与局部变量
2016/06/10 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
深入了解JavaScript的逻辑运算符(与、或)
2016/12/20 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
jQuery中的类名选择器(.class)用法简单示例
2018/05/14 jQuery
小程序页面动态配置实现方法
2019/02/05 Javascript
Vue 使用typescript如何优雅的调用swagger API
2020/09/01 Javascript
[02:44]重置世界,颠覆未来——DOTA2 7.23版本震撼上线
2019/12/01 DOTA
python简单判断序列是否为空的方法
2015/06/30 Python
Python文件处理
2016/02/29 Python
彻底理解Python list切片原理
2017/10/27 Python
python的dataframe和matrix的互换方法
2018/04/11 Python
Tensorflow使用支持向量机拟合线性回归
2018/09/07 Python
Python使用sax模块解析XML文件示例
2019/04/04 Python
Python字符串内置函数功能与用法总结
2019/04/16 Python
python里运用私有属性和方法总结
2019/07/08 Python
Python的垃圾回收机制详解
2019/08/28 Python
Python实现word2Vec model过程解析
2019/12/16 Python
Python实现一个优先级队列的方法
2020/07/31 Python
Ariat官网:美国马靴和服装品牌
2019/12/16 全球购物
教师见习期自我鉴定
2014/04/28 职场文书
信息管理专业自荐书
2014/06/05 职场文书
2015年财政局工作总结
2015/05/21 职场文书
浅谈golang 中time.After释放的问题
2021/05/05 Golang
关于Python中*args和**kwargs的深入理解
2021/08/07 Python