swagger @ApiModel添加实体类不生效的解决

 更新时间:2022年01月10日 14:44:17   作者:caseyfu  
这篇文章主要介绍了swagger @ApiModel添加实体类不生效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教。

@ApiModel添加实体类不生效 

swagger, @ApiModel, Models, 实体类无法加载

在使用swagger时, 以为加上@ApiModel在实体类上就可以在swagger-ui.html的Models里面显示.

但是我创建了很多实体类, 但怎么也只显示了一个???

Models中无论如何只有User这一个实体类。 后来发现不是加上@ApiModel就可以加入Models中的,必须要在controller层中关联这个实体类。由于我把所有实体类创建好后只测试了User,其它的实体类都没关联,所以swagger-ui.html中的Models没有实体类的显示。

Models实体类无法显示

Swagger环境为:

<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.9.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.9.2</version>
</dependency>

编写实体类 User:

@ApiModel("用户实体类")
public class User {
    @ApiModelProperty("用户名")
    private String username;
    @ApiModelProperty("密码")
    private String password;
}

在controller中使用该实体类:

@PostMapping("/user")
public User user() {
    return new User();
}

却发现Models中根本没有User类的信息!

在这里插入图片描述

解决办法

给实体类添加 get 和 set 方法!

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ApiModel("用户实体类")
public class User {
    @ApiModelProperty("用户名")
    private String username;
    @ApiModelProperty("密码")
    private String password;
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }    
}

成功显示!

在这里插入图片描述

由此可知,以后写实体类的时候,写全!

构造方法,get、set方法,toString方法全都加上!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring Boot整合Spring Data JPA过程解析

    Spring Boot整合Spring Data JPA过程解析

    这篇文章主要介绍了Spring Boot整合Spring Data JPA过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • SpringBoot3集成和使用Jasypt的代码详解

    SpringBoot3集成和使用Jasypt的代码详解

    随着信息安全的日益受到重视,加密敏感数据在应用程序中变得越来越重要,Jasypt作为一个简化Java应用程序中数据加密的工具,为开发者提供了一种便捷而灵活的加密解决方案,本文将深入解析Jasypt的工作原理,需要的朋友可以参考下
    2024-01-01
  • 详解Java中的悲观锁与乐观锁

    详解Java中的悲观锁与乐观锁

    乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展.这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人,文中详细介绍了悲观锁与乐观锁,需要的朋友可以参考下
    2021-05-05
  • java对象序列化操作实例分析

    java对象序列化操作实例分析

    这篇文章主要介绍了java对象序列化操作,结合实例形式分析了java对象序列化操作相关实现步骤与操作注意事项,需要的朋友可以参考下
    2019-11-11
  • java中文转拼音工具类详解

    java中文转拼音工具类详解

    这篇文章主要为大家详细介绍了java中文转拼音工具类的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-04-04
  • idea创建spring boot项目及java版本只能选择17和21的问题

    idea创建spring boot项目及java版本只能选择17和21的问题

    这篇文章主要介绍了idea创建spring boot项目及java版本只能选择17和21的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • Spring Security使用权限注解实现精确控制

    Spring Security使用权限注解实现精确控制

    在现代的应用系统中,权限管理是确保系统安全性的重要环节,Spring Security作为Java世界最为普及的安全框架,提供了强大而灵活的权限控制功能,这篇文章将深入探讨Spring Security使用权限注解实现精确控制,需要的朋友可以参考下
    2024-12-12
  • Java的关键字与保留字小结

    Java的关键字与保留字小结

    Java 保留字列表 (依字母排序 共14组) : Java保留字是指现有Java版本尚未使用 但以后版本可能会作为关键字使用
    2012-10-10
  • Java方法的返回值及注意事项小结

    Java方法的返回值及注意事项小结

    这篇文章主要介绍了Java方法的返回值及注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • 深入了解Java设计模式之策略模式

    深入了解Java设计模式之策略模式

    策略模式属于Java-设计模式中行为模式之一,该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换。本文将通过示例详细讲解这一模式,需要的可以参考一下
    2022-09-09

最新评论