使用Lombok導致打印的tostring中缺少父類的屬性問題
更新時間:2024年11月05日 15:32:29 作者:合格的程序員
使用Lombok時,若發(fā)現(xiàn)@Data注解的@ToString不包含父類屬性,可通過添加@ToString(callSuper=true)解決,此方法確保在生成toString()時包括父類的屬性,有效解決只打印子類屬性的問題,這種做法對于需要完整信息展示的場景尤為重要
Lombok導致打印的tostring中缺少父類的屬性

@Data
public class User extends BaseEntity {
/**
* 姓名
*/
@TableField("name")
private String name;
/**
* 密碼
*/
@TableField("password")
private String password;
/**
* 性別
*/
@TableField("sex")
private String sex;
/**
* 年齡
*/
@TableField("age")
private Integer age;
/**
* 郵箱
*/
@TableField("email")
private String email;
/**
* 排序
*/
@TableField("sort")
private Integer sort;
圖中打印內(nèi)容只包含子類屬性,卻不包含父類BaseEntity的屬性
此處@Data修飾,此注解包含了getter,setter,tostring
所以此處的tostring如果不設置參數(shù)的話,打印string的時候只會包含子類的屬性
解決
在@Data的基礎上再加一個@ToString(callSuper = true)注解
callSuper = true
即解決缺少父類屬性的問題
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Java java.lang.ExceptionInInitializerError 錯誤如何解決
這篇文章主要介紹了 Java java.lang.ExceptionInInitializerError 錯誤如何解決的相關資料,需要的朋友可以參考下2017-06-06
java連接HBase,連接不上報錯can not resolve問題及解決
這篇文章主要介紹了java連接HBase,連接不上報錯can not resolve問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06
java list中包含某個字符串的兩種方法實現(xiàn)
在Java開發(fā)中,經(jīng)常需要判斷一個List中是否包含特定的字符串,包括使用contains()方法和循環(huán)遍歷判斷,具有一定的參考價值,感興趣的可以了解一下2024-03-03
SpringBoot?如何使用sharding?jdbc進行分庫分表
這篇文章主要介紹了SpringBoot?如何使用sharding?jdbc進行分庫分表,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02

