java 只列印實體類裡的 非 null 屬性
自己寫一個方法:
// 只列印實體類裡的 非 null 屬性
public static void printNotNullProperties(Object source){
final BeanWrapper src = new BeanWrapperImpl(source);
java.beans.PropertyDescriptor[] pds = src.getPropertyDescriptors();
StringBuffer sb = new StringBuffer();
String className = "";
for(java.beans.PropertyDescriptor pd : pds){
Object srcValue = src.getPropertyValue(pd.getName());
if(srcValue != null){
if(!pd.getName().equals("class")){
sb.append(pd.getName() + "=" + srcValue + ", ");
}else{
className = ((Class)srcValue).getSimpleName();
}
}
}
StringBuffer result = new StringBuffer();
result.append(className);
result.append(" ");
result.append("[");
// 去掉結尾的 ,
if(sb.length() > 0){
String content = sb.substring(0, sb.length() - 2);
result.append(content);
}
result.append("]");
System.out.println(result);
}
呼叫:
User user = new User();
user.setUsername( "wang" );
user.setPassword( "123" );
user.setId( 123 );
printNotNullProperties( user );
// 列印結果是 User [id=123, password=123, username=wang]
如果輸入的引數是 map,要列印它的非空屬性,就需要先把 map 轉成某種 bean,用:https://blog.csdn.net/beguile/article/details/81566380 這種方法
相關文章
- [JAVA] 只知物件屬性,不知類屬性?就算類答應,static都不答應Java物件
- Struts FormBean 裡 Long型屬性取不到null嗎?ORMBeanNull
- [非專業翻譯] Mapster - 對映只讀屬性
- 注意!非靜態內部類和非靜態方法的匿名類的this$0屬性
- Java學習之類的屬性(轉)Java
- TypeScript 介面 只讀屬性TypeScript
- 深入剖析 Java 類屬性與類方法的應用Java
- 將一個物件裡所有的空值屬性設定成null物件Null
- 遊戲只屬於男生?質疑性別刻板印象並非小題大做遊戲
- Python 類的屬性與例項屬性Python
- scss中如果將null作為屬性值會刪除此屬性CSSNull
- 獲得類的屬性
- Java如何建立臨時檔案並列印File各種屬性Java
- C#通過反射獲取物件屬性,列印所有欄位屬性的值C#反射物件
- css可繼承屬性和非繼承屬性一覽CSS繼承
- Python 類屬性的理解Python
- SQL Server 生成C#公共實體屬性和私有屬性SQLServerC#
- spring注入配置檔案屬性到java類SpringJava
- 用Descriptor來實現類級屬性(Property)
- Java反射-屬性Java反射
- C# 隨機給一個全部資訊都未知的類型別,如何獲取該類的類名、屬性個數、屬性名、屬性的資料型別、屬性值?C#隨機資料型別
- 類的結構之一:屬性
- 類的靜態屬性和方法
- Scala的類、屬性、物件欄位物件
- javascript中各類的prototype屬性JavaScript
- python 獲取類的屬性Python
- Delphi 類的靜態屬性 (轉)
- java裡的物件和類Java物件
- java屬性檔案properties常用操作工具類Java
- 關於Python類屬性與例項屬性的討論Python
- TypeScript 類靜態屬性TypeScript
- 如何實現分類中新增弱引用屬性
- Mybatis解決實體類屬性名與資料庫列名不對應的方法MyBatis資料庫
- java lambda list集合中物件某屬性重複,只取第一個物件Java物件
- 非佈局樣式-裝飾性屬性&CSS hackCSS
- Java null最佳實踐JavaNull
- create table as select where 1=0會把null和not null屬性也帶上Null
- (轉載) java實體類的作用Java