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
查看更多关于swagger如何返回map字段注释的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did214595