电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Java如何獲取對象屬性及對應(yīng)值

瀏覽:3日期:2022-08-21 11:27:12

利用反射獲取對象的所有屬性及對應(yīng)的值

1、獲取屬性名數(shù)組

private static String[] getFiledName(Object o) { Field[] fields = o.getClass().getDeclaredFields(); String[] fieldNames = new String[fields.length]; for (int i = 0; i < fields.length; i++) { fieldNames[i] = fields[i].getName(); } return fieldNames; }

2、根據(jù)屬性名獲取屬性值

private static Object getFieldValueByName(String fieldName, Object o) { try { String firstLetter = fieldName.substring(0, 1).toUpperCase(); String getter = 'get' + firstLetter + fieldName.substring(1); Method method = o.getClass().getMethod(getter, new Class[] {}); Object value = method.invoke(o, new Object[] {}); return value; } catch (Exception e) { logger.error('獲取屬性值失敗!' + e, e); } return null; }

3、獲取屬性的數(shù)據(jù)類型

private static Object getFiledType(String fieldName, Object o) { Field[] fields = o.getClass().getDeclaredFields(); for (Field field : fields) { if (Objects.equals(fieldName, field.getName())) {return field.getType(); } } return null; }

4、完整代碼及其引入的包

package com.hao.search;import java.lang.reflect.Field;import java.lang.reflect.Method;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Date;import java.util.List;import java.util.Objects;import org.apache.commons.collections.CollectionUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import com.google.common.base.Joiner;public class ObjectPaseUtils { private static Logger logger = LoggerFactory.getLogger(ObjectPaseUtils.class); /** * @desc 將對象轉(zhuǎn)換成指定String * @param <T> * @param t * @return */ public static <T> String objectToStr(T t) { List<String> list = new ArrayList<String>(); String[] fieldNames = getFiledName(t); for (int i = 0; i < fieldNames.length; i++) { String name = fieldNames[i]; Object value = getFieldValueByName(name, t); if (null != value) {if (getFiledType(name, t).equals(Date.class)) { value = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss').format((Date)value);}list.add(name + ' : ' + value); } } if (CollectionUtils.isNotEmpty(list)) { return Joiner.on('r').skipNulls().join(list); } return null; } /** * @desc 獲取屬性名數(shù)組 * @param o * @return */ private static String[] getFiledName(Object o) { Field[] fields = o.getClass().getDeclaredFields(); String[] fieldNames = new String[fields.length]; for (int i = 0; i < fields.length; i++) { fieldNames[i] = fields[i].getName(); } return fieldNames; } /** * @desc 根據(jù)屬性名獲取屬性值 * @param fieldName * @param o * @return */ private static Object getFieldValueByName(String fieldName, Object o) { try { String firstLetter = fieldName.substring(0, 1).toUpperCase(); String getter = 'get' + firstLetter + fieldName.substring(1); Method method = o.getClass().getMethod(getter, new Class[] {}); Object value = method.invoke(o, new Object[] {}); return value; } catch (Exception e) { logger.error('獲取屬性值失敗!' + e, e); } return null; } /** * @desc 獲取屬性的數(shù)據(jù)類型 * @param fieldName * @param o * @return */ private static Object getFiledType(String fieldName, Object o) { Field[] fields = o.getClass().getDeclaredFields(); for (Field field : fields) { if (Objects.equals(fieldName, field.getName())) {return field.getType(); } } return null; }}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 泰安办公家具-泰安派格办公用品有限公司| 咖啡加盟-咖啡店加盟-咖啡西餐厅加盟-塞纳左岸咖啡西餐厅官网 | 超声波清洗机-超声波清洗设备定制生产厂家 - 深圳市冠博科技实业有限公司 | 地图标注|微信高德百度地图标注|地图标记-做地图[ZuoMap.com] | 山东氧化铁红,山东铁红-淄博科瑞化工有限公司 | 新疆乌鲁木齐网站建设-乌鲁木齐网站制作设计-新疆远璨网络 | 贴片电感_贴片功率电感_贴片绕线电感_深圳市百斯特电子有限公司 贴片电容代理-三星电容-村田电容-风华电容-国巨电容-深圳市昂洋科技有限公司 | 企小优-企业数字化转型服务商_网络推广_网络推广公司 | 水冷散热器_水冷电子散热器_大功率散热器_水冷板散热器厂家-河源市恒光辉散热器有限公司 | 深圳市人通智能科技有限公司| 次氯酸钠厂家,涉水级次氯酸钠,三氯化铁生产厂家-淄博吉灿化工 | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 | 安徽免检低氮锅炉_合肥燃油锅炉_安徽蒸汽发生器_合肥燃气锅炉-合肥扬诺锅炉有限公司 | 创富网-B2B网站|供求信息网|b2b平台|专业电子商务网站 | 楼梯定制_楼梯设计施工厂家_楼梯扶手安装制作-北京凌步楼梯 | 预制围墙_工程预制围墙_天津市瑞通建筑材料有限公司 | 北京网站建设-企业网站建设-建站公司-做网站-北京良言多米网络公司 | 雾度仪_雾度计_透光率雾度仪价格-三恩时(3nh)光电雾度仪厂家 | 留学生辅导网-在线课程论文辅导-留学生挂科申诉机构 | 山东彩钢板房,山东彩钢活动房,临沂彩钢房-临沂市贵通钢结构工程有限公司 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | 污水处理设备维修_污水处理工程改造_机械格栅_过滤设备_气浮设备_刮吸泥机_污泥浓缩罐_污水处理设备_污水处理工程-北京龙泉新禹科技有限公司 | 环氧铁红防锈漆_环氧漆_无溶剂环氧涂料_环氧防腐漆-华川涂料 | 锂辉石检测仪器,水泥成分快速分析仪-湘潭宇科分析仪器有限公司 | 【孔氏陶粒】建筑回填陶粒-南京/合肥/武汉/郑州/重庆/成都/杭州陶粒厂家 | 谷歌关键词优化-外贸网站优化-Google SEO小语种推广-思亿欧外贸快车 | 南溪在线-南溪招聘找工作、找房子、找对象,南溪综合生活信息门户! | 桑茶-七彩贝壳桑叶茶 长寿茶| 制丸机,小型中药制丸机,全自动制丸机价格-甘肃恒跃制药设备有限公司 | 冷库安装厂家_杭州冷库_保鲜库建设-浙江克冷制冷设备有限公司 | 南汇8424西瓜_南汇玉菇甜瓜-南汇水蜜桃价格 | 青岛侦探_青岛侦探事务所_青岛劝退小三_青岛调查出轨取证公司_青岛婚外情取证-青岛探真调查事务所 | 气象监测系统_气象传感器_微型气象仪_气象环境监测仪-山东风途物联网 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 石英砂矿石色选机_履带辣椒色选机_X光异物检测机-合肥幼狮光电科技 | 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 防腐储罐_塑料储罐_PE储罐厂家_淄博富邦滚塑防腐设备科技有限公司 | 飞扬动力官网-广告公司管理软件,广告公司管理系统,喷绘写真条幅制作管理软件,广告公司ERP系统 | 德国BOSCH电磁阀-德国HERION电磁阀-JOUCOMATIC电磁阀|乾拓百科 | 高低温万能试验机_拉力试验机_拉伸试验机-馥勒仪器科技(上海)有限公司 | 共享雨伞_共享童车_共享轮椅_共享陪护床-共享产品的领先者_有伞科技 |