swagger中没有新加的实体类属性(新加的属性在swagger中不显示)问题
昨晚在實體類中新加了三個之后就下班了,今天回來用swagger的時候發現swagger中對于這個實體類中的新增屬性沒顯示,納悶了,我尋思這也不能扒拉出鍋了啊,回去看一下屬性上的注解,如圖
這也沒錯啊,排除了這里,接著看一下屬性相關的get、set方法,發現昨晚回去的時候實體類中沒寫這個屬性的get、set方法,添加get、set方法后swagger中成功加載到新增屬性。
看來是根據get、set方法來加載這個屬性了。
有個疑問,swagger是根據get、set中的哪個方法來加載屬性的呢?
試了一下只留get方法或者set方法,發現swagger竟然都能加載到屬性,那么確定了屬性是根據對應的get、set方法是否存在獲取的。
那屬性名又是由什么決定的呢?
如圖所示
情況一:
代碼中,當get、set后的方法名相同時,
swagger中的屬性名與get、set方法名后綴相同,將后綴中大寫的首字母轉小寫
情況二:
代碼中,當get、set后綴的方法名不同時,
swagger中竟然根據不同的get、set方法名出現了兩個屬性名?! 也就是說get與set方法對于swagger獲取屬性來說并沒有優先級,如果不同名,swagger就認為有兩個屬性。
總結一下,swagger中的屬性名根據對應實體類中的get、set方法名,如果get、set后綴不同名,swagger就認為有兩個屬性。
總結
以上是生活随笔為你收集整理的swagger中没有新加的实体类属性(新加的属性在swagger中不显示)问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 视觉SLAM中的李群李代数基础
- 下一篇: vm 虚拟机设置共享文件夹