swagger?@ApiModel添加實(shí)體類不生效的解決
@ApiModel添加實(shí)體類不生效
swagger, @ApiModel, Models, 實(shí)體類無法加載
在使用swagger時(shí), 以為加上@ApiModel在實(shí)體類上就可以在swagger-ui.html的Models里面顯示.
但是我創(chuàng)建了很多實(shí)體類, 但怎么也只顯示了一個(gè)???




Models中無論如何只有User這一個(gè)實(shí)體類。 后來發(fā)現(xiàn)不是加上@ApiModel就可以加入Models中的,必須要在controller層中關(guān)聯(lián)這個(gè)實(shí)體類。由于我把所有實(shí)體類創(chuàng)建好后只測(cè)試了User,其它的實(shí)體類都沒關(guān)聯(lián),所以swagger-ui.html中的Models沒有實(shí)體類的顯示。

Models實(shí)體類無法顯示
Swagger環(huán)境為:
<!-- 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>
編寫實(shí)體類 User:
@ApiModel("用戶實(shí)體類")
public class User {
? ? @ApiModelProperty("用戶名")
? ? private String username;
? ? @ApiModelProperty("密碼")
? ? private String password;
}在controller中使用該實(shí)體類:
@PostMapping("/user")
public User user() {
? ? return new User();
}卻發(fā)現(xiàn)Models中根本沒有User類的信息!

解決辦法
給實(shí)體類添加 get 和 set 方法!
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ApiModel("用戶實(shí)體類")
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;
}
}
成功顯示!

由此可知,以后寫實(shí)體類的時(shí)候,寫全!
構(gòu)造方法,get、set方法,toString方法全都加上!
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot整合Spring Data JPA過程解析
這篇文章主要介紹了Spring Boot整合Spring Data JPA過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10
idea創(chuàng)建spring boot項(xiàng)目及java版本只能選擇17和21的問題
這篇文章主要介紹了idea創(chuàng)建spring boot項(xiàng)目及java版本只能選擇17和21的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-01-01
Spring Security使用權(quán)限注解實(shí)現(xiàn)精確控制
在現(xiàn)代的應(yīng)用系統(tǒng)中,權(quán)限管理是確保系統(tǒng)安全性的重要環(huán)節(jié),Spring Security作為Java世界最為普及的安全框架,提供了強(qiáng)大而靈活的權(quán)限控制功能,這篇文章將深入探討Spring Security使用權(quán)限注解實(shí)現(xiàn)精確控制,需要的朋友可以參考下2024-12-12

