使用反射循環獲取對象的屬性和值


  //反射獲取對象所有屬性
        Field[]fields = 對象名.getClass().getDeclaredFields();

  //進行遍歷
        for (Field field : fields) {

    //獲取屬性名字
            String name=field.getName();

    //獲取屬性類型
            String type = field.getGenericType().toString();
            System.out.println("---------------------------------");

    //邏輯判斷
            if("class java.lang.String".equals(type)) {      

      //獲取get方法
                    Method method=userMessage.getClass().getMethod("get"+ name.substring(0,1).toUpperCase()+name.substring(1));      //獲取屬性值
                    String value=(String) method.invoke(對象名);
                    if(StringUtils.isNotEmpty(value)) {
                        System.out.println("屬性名:"+name);
                        System.out.println("屬性值"+value);
                    }              
            }
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM