swagger如何返回map字段注释
作者:xingsfdz 发布时间:2023-02-22 08:56:27
标签:map,字段,注释,swagger
1.效果图如下:
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 显示返回模型的注释
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);
}
效果
来源:https://blog.csdn.net/xingsfdz/article/details/105919031


猜你喜欢
- 思路今天带大家实现一个上拉加载更多的ListView.GitHub传送门:PulmListView, 欢迎大家fork&&s
- 1. 理解abstract:抽象的2. 作用abstract可以用来修饰类、方法。不能用abstract修饰变量、代码块、构造器。不能用ab
- 在安卓开发中,会碰到选开始日期和结束日期的问题。特别是在使用Pad时,如果弹出一个Dialog,能够同时选择开始日期和结束日期,那将是极好的
- Canvas,在英语中,这个单词的意思是帆布。在Android中,则把Canvas当做画布,只要我们借助设置好的画笔(Paint类)就可以在
- C#对文件的操作相当方便,主要涉及到四个类:File、FileInfo、Directory、DirectoryInfo,前两个提供了针对文件
- 在手机客户端尤其是Android应用的开发过程中,我们经常会接触到“硬件加速”这个词。由于操作系统对底层软硬件封装非常完善,上层软件开发者往
- 实践过程效果代码public partial class frmSend : Form{ public frmSe
- 本文实例讲述了C#设置页面单位和缩放的方法。分享给大家供大家参考。具体如下:using System;using System.Collec
- 1、说明使用Directory类对指定文件夹下的今天或者更早日期之前的文件进行删除。2、代码//文件夹路径string strFolderP
- 快速排序实现: namespace QuickSort { class QuickSort { public static void Sor
- 黑白棋介绍黑白棋,又叫苹果棋,最早流行于西方国家。游戏通过相互翻转对方的棋子,最后以棋盘上谁的棋子多来判断胜负。黑白棋非常易于上手,但精通则
- 本人是用易语言起步的,起初是为了兴趣,后来由于易语言被杀软误杀严重,连空白程序都杀,后来转到了学C#,随着学习的深入,接触越来越复杂的东西之
- 本文实例讲述了java数据结构与算法之中缀表达式转为后缀表达式的方法。分享给大家供大家参考,具体如下://stackpublic class
- 工作需要,经常需要实现api接口,但每次都是大同小异,我就考虑是否可以将这种重复性的工作配置化。我就写一个模板api,然后所有的HTTP请求
- 简述: 前端时间再看一些类库的源码,发现责任链模式的强大之处,尤其是和建造者模式的结合后强大的动态可扩展
- SUM映射问题当我们根据类别进行统计,返回的数据类型为HashMap<String,Object>,获取数值类型,容易报java
- List接口介绍—ArrayList有序、可重复线程不安全,因为没有synchronized修饰ArrayList源码结论ArrayList
- 正确使用并行流,避免共享可变状态错用并行流而产生错误的首要原因,就是使用的算法改变了某些共享状态。下面是另一种实现对前n个自然数求和的方法,
- *注:可以用 adb logcat > 路径/文件名 来保存,此命令执行之时起的全部日志信息到一个文件里,ctrl + C 结束日志输
- 前言在前面的2个章节中,一一哥 带大家实现了在Spring Security中添加图形验证码校验功能,其实Spring Security的功