獲取Java物件中所有的屬性名稱和屬性值
1,首先我們建立一個Java實體類Person,並建立屬性name,age,gender,程式碼如下:
2、建立物件public class Person { private String name; private int age; private String gender; public Person(String n,int a,String g) { name = n; age = a; gender = g; } public String getName() { return name; } public int getAge() { return age; } public String getGender() { return gender; } }
Person person = new Person("zhangsan", 30, "男");
3、建立獲取屬性陣列的方法
4,根據屬性名稱獲取對應的屬性值(通過get方法)/** * 獲取屬性名陣列 * */ 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++){ // System.out.println(fields[i].getType()); fieldNames[i]=fields[i].getName(); } return fieldNames; }
5、完美呼叫/* 根據屬性名獲取屬性值 * */ 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) { return null; } }
StringBuilder sbName = new StringBuilder();
StringBuilder sbValue = new StringBuilder();
String[] fieldNames = getFiledName(person);
for(int j=0 ; j<fieldNames.length ; j++){ //遍歷所有屬性
String name = fieldNames[j]; //獲取屬性的名字
Object value = getFieldValueByName(name,person);
sbName.append(name);
sbValue.append(value);
if(j != fieldNames.length - 1) {
sbName.append("/");
sbValue.append("/");
}
}
System.out.println("attribute name:"+sbName.toString());
System.out.println("attribute value:"+sbValue.toString());
6、列印結果:
attribute name:name/age/gender
attribute value:zhangsan/30/男
相關推薦
獲取Java物件中所有的屬性名稱和屬性值
參考文章 1,首先我們建立一個Java實體類Person,並建立屬性name,age,gender,程式碼如下: public class Person { private String name
遞迴遍歷獲取複雜物件中所有目標屬性的值(二)
在利用遞迴遍歷獲取Java複雜物件(物件的屬性仍是物件//list/map)中指定屬性的值(一)中我寫了遞迴遍歷複雜物件中目標屬性,找到第一個目標屬性則退出遍歷。現在有遇到要遍歷複雜物件中所有目標屬性的值。且指定了屬性所在類的類名、屬性型別、屬性
獲取關於 ResultSet 物件中列的型別和屬性資訊的物件
public interface ResultSetMetaData可用於獲取關於ResultSet物件中列的型別和屬性資訊的物件。以下程式碼片段建立 ResultSet 物件 rs,建立 ResultSetMetaData 物件 rsmd,並使用 rsmd 查詢rs 有
獲取java類中所有方法及其引數
private void getReflectAllMethod( Class <?> mLocalClass){ Class<?> c; c = mLocalClass; try { do{ Met
jquery獲取 動態表中所有的單選框值
HTML程式碼,此處為動態生成的表: <table class="table table-striped table-bordered table-hover" id="testtable"> <thead align="center" styl
java中將實體的值傳輸到mybatise後無法獲取到物件中屬性的值
可能原因:service與dao未在系統啟動時spring未能將相應的類注入 解決方法:手動獲取類 public static <T> T getBean(Class<T> requiredType) { return
java獲取物件屬性型別、屬性名稱、屬性值
因為專案需要用到,於是簡單封裝了一些常用的操作: /** * 根據屬性名獲取屬性值 * */ private Object getFieldValueByName(String fieldName, Object o) { try {
java正則表示式去除html中所有的標籤和特殊HTML字元
關於java正則表示式去除html中所有的標籤和特殊HTML字元,結合我所做的專案總結的經驗: 總共分為三種:第一種適用於適用短的文章,將文章用正則表示式的方式拼接到程式碼中,有些繁瑣,其實不太實用。第二種就是直接將文件引入,進行更改,但是有一個小缺點,就是文件中的格式可能是utf-8格式的
java物件中的三種狀態和髒檢查及重新整理快取機制
瞬時狀態 瞬時狀態又稱臨時狀態.如果java物件與資料庫中的資料沒有任何的關聯,即此java物件在資料庫中沒有相關聯的記錄,此時java物件的狀態為瞬時狀態,session對於 瞬時狀態的ava物件是一無所知的,當物件不再被其他物件引用時,它的所有資料也就丟失了,物件將會被java虛擬機器按照垃圾回收
js 獲取字串中所有的數字和漢字
var re1 = /(\d{1,3})+(?:\.\d+)?/g var re2 = /[\u4e00-\u9fa5]{2,}/g var str="11我22們33兩個"; var arr1 =
js 獲取字符串中所有的數字和漢字
str 取字符 nbsp 數字 plain dex class var 字符串 var re1 = /(\d{1,3})+(?:\.\d+)?/g var re2 = /[\u4e00-\u9fa5]{2,}/g var str="11我22們33兩個"; var arr1
Python之——獲取電腦連線過的所有wifi名稱和密碼
不多說,上程式碼: # -*- coding: UTF-8 -*- import os import sys reload(sys) sys.setdefaultencoding('utf-8') # 定義一個函式checkWIFI,獲取電腦連線過的所有wifi名
java類中為什麼設定set 和get 方法操作屬性
樣例一: class person { public String name ; public String sex ; } 如上這麼一個類我們可以對它的實體進行: 起名操作,如 person1.name = "小明"; 取名操作
servlet獲取表單提交的所有資料名稱和值
<body> <form action="/day06/RequestDemo1"> 使用者名稱:<input type="text" name="username"><br> 密 碼:<input typ
SQL 讀取資料庫中所有資料表的所有約束型別名稱和預設值
--設計初衷:轉換簡體版本的資料表到繁體版本--使用遊標查詢所有使用者資料表Declare @CurrentTableName nvarchar(250)Declare UserTableCursor Cursor For --宣告遊標Select name From
關於C++/JAVA類中的static成員和物件成員的說法正確的是:
A:static成員變數在物件構造時候生成 B: static成員函式在物件成員函式中無法呼叫 C: 虛成員函式不可能是static成員函式 D: static成員函式不能訪問static成員變數 答案:c 解釋,(1)類的static成員變數屬於該抽象類,需
遍歷java物件中的私有屬性,將null替換為“”
package com.yu.killnull; import java.lang.reflect.Field; import java.lang.reflect.Method; /** * Created with Yang Xiaolei * Date: 2018
遍歷獲取物件屬性名和屬性值
我們不但開發網站,我們還提供網站開發培訓! 郴州網站開發 QQ群:587978628 在JavaScript中,獲取簡單物件的屬性名和屬性值很容易,來看一個稍微複雜點的例子,遍歷獲取下面這個物件的屬性
js獲取session物件中的屬性值
<label for="name">性別</label> <select class="form-control" name="" id="gender" value="${Users.user_gender }"> <opt
java如何把String字串中所有的空格和製表符(\t)替換成單個符號。
該方法可用於將字串分解成若干有用的陣列。 大致程式碼如下: package test; import java.util.ArrayList; import java.util.List; /** * @author : suyuyuan * @date :2016年5