亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Java利用反射獲取object的屬性和值代碼示例

2024-07-13 10:14:55
字體:
來源:轉載
供稿:網友

在看java/203603.html">反射順便做個筆記,目前知道的反射的Object都是要有對象的也就是實體Bean。

referance:

import java.lang.reflect.Field;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * 反射處理Bean,得到里面的屬性值 *  * @author liulinsen * */public class ReflexObjectUtil {	/**   * 單個對象的所有鍵值   *    * @param object   *      單個對象   *    * @return Map<String, Object> map 所有 String鍵 Object值 ex:{pjzyfy=0.00,   *     xh=01, zzyl=0.00, mc=住院患者壓瘡發生率, pjypfy=0.00, rs=0, pjzyts=0.00,   *     czydm=0037, lx=921, zssl=0.00}   */	public static Map<String, Object> getKeyAndValue(Object obj) {		Map<String, Object> map = new HashMap<String, Object>();		// 得到類對象		Class userCla = (Class) obj.getClass();		/* 得到類中的所有屬性集合 */		Field[] fs = userCla.getDeclaredFields();		for (int i = 0; i < fs.length; i++) {			Field f = fs[i];			f.setAccessible(true);			// 設置些屬性是可以訪問的			Object val = new Object();			try {				val = f.get(obj);				// 得到此屬性的值				map.put(f.getName(), val);				// 設置鍵值			}			catch (IllegalArgumentException e) {				e.printStackTrace();			}			catch (IllegalAccessException e) {				e.printStackTrace();			}			/*       * String type = f.getType().toString();//得到此屬性的類型 if       * (type.endsWith("String")) {       * System.out.println(f.getType()+"/t是String"); f.set(obj,"12") ;       * //給屬性設值 }else if(type.endsWith("int") ||       * type.endsWith("Integer")){       * System.out.println(f.getType()+"/t是int"); f.set(obj,12) ; //給屬性設值       * }else{ System.out.println(f.getType()+"/t"); }       */		}		System.out.println("單個對象的所有鍵值==反射==" + map.toString());		return map;	}	/**   * 單個對象的某個鍵的值   *    * @param object   *      對象   *    * @param key   *      鍵   *    * @return Object 鍵在對象中所對應得值 沒有查到時返回空字符串   */	public static Object getValueByKey(Object obj, String key) {		// 得到類對象		Class userCla = (Class) obj.getClass();		/* 得到類中的所有屬性集合 */		Field[] fs = userCla.getDeclaredFields();		for (int i = 0; i < fs.length; i++) {			Field f = fs[i];			f.setAccessible(true);			// 設置些屬性是可以訪問的			try {				if (f.getName().endsWith(key)) {					System.out.println("單個對象的某個鍵的值==反射==" + f.get(obj));					return f.get(obj);				}			}			catch (IllegalArgumentException e) {				e.printStackTrace();			}			catch (IllegalAccessException e) {				e.printStackTrace();			}		}		// 沒有查到時返回空字符串		return "";	}	/**   * 多個(列表)對象的所有鍵值   *    * @param object   * @return List<Map<String,Object>> 列表中所有對象的所有鍵值 ex:[{pjzyfy=0.00, xh=01,   *     zzyl=0.00, mc=住院患者壓瘡發生率, pjypfy=0.00, rs=0, pjzyts=0.00,   *     czydm=0037, lx=921, zssl=0.00}, {pjzyfy=0.00, xh=02, zzyl=0.00,   *     mc=新生兒產傷發生率, pjypfy=0.00, rs=0, pjzyts=0.00, czydm=0037, lx=13,   *     zssl=0.00}, {pjzyfy=0.00, xh=03, zzyl=0.00, mc=陰道分娩產婦產傷發生率,   *     pjypfy=0.00, rs=0, pjzyts=0.00, czydm=0037, lx=0, zssl=0.00},   *     {pjzyfy=0.00, xh=04, zzyl=0.75, mc=輸血反應發生率, pjypfy=0.00, rs=0,   *     pjzyts=0.00, czydm=0037, lx=0, zssl=0.00}, {pjzyfy=5186.12,   *     xh=05, zzyl=0.00, mc=剖宮產率, pjypfy=1611.05, rs=13, pjzyts=7.15,   *     czydm=0037, lx=13, zssl=0.00}]   */	public static List<Map<String, Object>> getKeysAndValues(List<Object> object) {		List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();		for (Object obj : object) {			Class userCla;			// 得到類對象			userCla = (Class) obj.getClass();			/* 得到類中的所有屬性集合 */			Field[] fs = userCla.getDeclaredFields();			Map<String, Object> listChild = new HashMap<String, Object>();			for (int i = 0; i < fs.length; i++) {				Field f = fs[i];				f.setAccessible(true);				// 設置些屬性是可以訪問的				Object val = new Object();				try {					val = f.get(obj);					// 得到此屬性的值					listChild.put(f.getName(), val);					// 設置鍵值				}				catch (IllegalArgumentException e) {					e.printStackTrace();				}				catch (IllegalAccessException e) {					e.printStackTrace();				}			}			list.add(listChild);			// 將map加入到list集合中		}		System.out.println("多個(列表)對象的所有鍵值====" + list.toString());		return list;	}	/**   * 多個(列表)對象的某個鍵的值   *    * @param object   * @param key   * @return List<Object> 鍵在列表中對應的所有值 ex:key為上面方法中的mc字段 那么返回的數據就是: [住院患者壓瘡發生率,   *     新生兒產傷發生率, 陰道分娩產婦產傷發生率, 輸血反應發生率, 剖宮產率]   */	public static List<Object> getValuesByKey(List<Object> object, String key) {		List<Object> list = new ArrayList<Object>();		for (Object obj : object) {			// 得到類對象			Class userCla = (Class) obj.getClass();			/* 得到類中的所有屬性集合 */			Field[] fs = userCla.getDeclaredFields();			for (int i = 0; i < fs.length; i++) {				Field f = fs[i];				f.setAccessible(true);				// 設置些屬性是可以訪問的				try {					if (f.getName().endsWith(key)) {						list.add(f.get(obj));					}				}				catch (IllegalArgumentException e) {					e.printStackTrace();				}				catch (IllegalAccessException e) {					e.printStackTrace();				}			}		}		System.out.println("多個(列表)對象的某個鍵的值列表====" + list.toString());		return list;	}}

調用:

List<Object> o=?Service.getAllList();
//java反射 解析測試
ReflexObjectUtil.getKeyAndValue(o.get(0));
ReflexObjectUtil.getValueByKey(o.get(0), "mc");
ReflexObjectUtil.getKeysAndValues(o);
ReflexObjectUtil.getValuesByKey(o, "mc");

總結

以上就是本文關于Java利用反射獲取object的屬性和值代碼示例的全部內容,希望對大家有所幫助。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久亚洲影院你懂的| 国产精品777| 国产精品入口免费视| 亚洲精品视频在线播放| 日韩美女免费观看| 性夜试看影院91社区| 日韩在线视频网站| 欧美亚洲日本黄色| 琪琪第一精品导航| 久久大大胆人体| 最新91在线视频| 国产精品青青在线观看爽香蕉| 欧美日韩国产在线看| 亚洲综合日韩在线| 岛国av一区二区三区| 4438全国成人免费| 精品国产91久久久久久老师| 欧美电影免费观看网站| 777777777亚洲妇女| 亚洲欧洲在线视频| 成人黄色生活片| 91久热免费在线视频| 国产精品成人播放| 国产精品久久久久影院日本| 成人免费视频在线观看超级碰| 久久久国产视频91| 国产欧美一区二区三区久久人妖| 综合网日日天干夜夜久久| 国产在线久久久| 国产精品老牛影院在线观看| 91精品国产高清久久久久久| 亚洲一区二区中文字幕| 国产精品日日做人人爱| 精品少妇v888av| 国产欧美最新羞羞视频在线观看| 日韩日本欧美亚洲| 亚洲国产三级网| 亚洲国产精品va在线看黑人动漫| 国产福利成人在线| 91热福利电影| 国产精品入口福利| 日韩性生活视频| 欧美日韩中文字幕日韩欧美| 国产亚洲欧美日韩精品| 国产盗摄xxxx视频xxx69| 日本久久亚洲电影| 大桥未久av一区二区三区| 国产婷婷97碰碰久久人人蜜臀| 久久久女女女女999久久| 5278欧美一区二区三区| 97香蕉久久超级碰碰高清版| 国产91对白在线播放| 色偷偷av亚洲男人的天堂| 国产精品永久免费视频| 91精品视频播放| 国产精品三级在线| 国产日韩精品视频| 国产精品久久色| 亚洲美女福利视频网站| 97色在线视频观看| 久久69精品久久久久久久电影好| 久久人人爽国产| 久久琪琪电影院| 日产精品久久久一区二区福利| 日韩大片在线观看视频| 久久这里只有精品视频首页| 久久精品国产69国产精品亚洲| 国产精品亚洲综合天堂夜夜| 国产欧美日韩91| 福利视频一区二区| 日韩在线播放av| 欧美在线亚洲在线| 亚洲第一黄色网| 97精品久久久| 欧美日韩国产丝袜美女| 欧美成人免费视频| 欧洲亚洲妇女av| 国产精品一区av| 国产精品美女久久久免费| 日韩av中文字幕在线播放| 日韩在线观看免费高清完整版| 日韩av电影中文字幕| 欧美精品999| 亚洲tv在线观看| 欧美xxxx做受欧美| 久久精品国产久精国产思思| 欧美日韩一区二区精品| 国产欧美一区二区白浆黑人| 久久精品国产91精品亚洲| 成人精品视频99在线观看免费| 久久久久久久国产精品视频| 国产一区二区三区视频| 久久久免费精品视频| 97久久久久久| **欧美日韩vr在线| 久久久国产精品亚洲一区| 欧美国产高跟鞋裸体秀xxxhd| 亚洲色图校园春色| 日韩av在线影视| 欧美激情亚洲国产| 亚洲伊人一本大道中文字幕| 亚洲欧洲美洲在线综合| 一区二区三区精品99久久| 日韩精品免费视频| 国产精品吹潮在线观看| 日韩av在线不卡| 欧美日韩裸体免费视频| 日韩高清电影免费观看完整| 精品久久久久人成| 国产成人午夜视频网址| 亚洲无线码在线一区观看| 欧美激情精品在线| 91中文字幕在线观看| 欧美在线视频免费| 欧美激情第一页xxx| 欧美成人精品h版在线观看| 亚洲午夜色婷婷在线| 久久99国产精品自在自在app| 亚洲最大在线视频| 琪琪亚洲精品午夜在线| 国产69精品久久久久9999| 亚洲国产成人精品电影| 日韩精品中文字幕久久臀| 国产97色在线|日韩| 久精品免费视频| 国产欧美在线看| 久久精品国产一区二区电影| 国产亚洲欧美日韩精品| 在线国产精品视频| 神马久久桃色视频| 九九九久久久久久| 亚洲精品91美女久久久久久久| 亚洲女同精品视频| 热久久美女精品天天吊色| 国产91在线播放| 午夜精品福利在线观看| 日韩美女视频免费在线观看| 成人国产精品免费视频| 97精品国产97久久久久久| 日韩av电影中文字幕| 久久av中文字幕| 亚洲精品自在久久| 一区二区三区在线播放欧美| 91久久在线观看| 久久久久久国产精品美女| 亚洲丝袜av一区| 国产精品aaa| 欧美剧在线观看| 亚洲欧美精品伊人久久| 久久精品视频中文字幕| 欧美视频一区二区三区…| 国产日韩欧美日韩大片| 日韩av免费观影| 国产亚洲一级高清| 亚洲国产婷婷香蕉久久久久久| 国产成人欧美在线观看| 亚洲视频在线看| 中文字幕日韩视频| 亚洲一区久久久| 国产精品午夜一区二区欲梦| 欧美日韩亚洲网| 日韩中文有码在线视频| 国内精品久久久久久久| 夜夜躁日日躁狠狠久久88av|