日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

利用反射过滤对象的null值

發布時間:2025/3/15 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用反射过滤对象的null值 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

項目的數據庫在 測試插入的時候 添加了很多空的數據進去 不是null 而是直接的varvhar格式的 字符串 "NULL" 這放在頁面上會讓人誤解是bug 所以 寫了一個方法_ 過濾 這些 NULL 的字符串_ 不讓他顯示在前臺頁面 寫在這里也僅僅為了 以后要用的時候能 copy 23333-------------------------

//用了泛型 可以是任意的對象傳入 public static <T> void nullFilter(T t){// 獲取實體類的所有屬性,返回Field數組Field[] field = t.getClass().getDeclaredFields();try {for (int j = 0; j < field.length; j++) { // 遍歷所有屬性String name = field[j].getName(); // 獲取屬性的名字name = name.substring(0, 1).toUpperCase() + name.substring(1); // 將屬性的首字符大寫,方便構造get,set方法String type = field[j].getGenericType().toString(); // 獲取屬性的類型// 只找String類型的 屬性進行過濾if (type.equals("class java.lang.String")) { //讓這個屬性可以被共有訪問field[j].setAccessible(true);Object obj = field[j].get(t);if(obj!=null){Method m = t.getClass().getMethod("get" + name);// 調用getter方法獲取屬性值String value = (String) m.invoke(t); //只要是null的字符串 先全轉成大寫 匹配大寫 并且給他空串還是nullif ("NULL".equals(value.toUpperCase())) {m = t.getClass().getMethod("set"+name,String.class);m.invoke(t, "");}}}}} catch (Exception e) {e.printStackTrace();} }

轉載于:https://my.oschina.net/xlpapapa/blog/1491987

總結

以上是生活随笔為你收集整理的利用反射过滤对象的null值的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。