通過反射獲取所有的字段:
假設有一個pojo類,User.java
public class User{
private String userName;
private String passWord;
//get set 方法省略
......
}
然後我們給 user 賦值,獲取其字段和值:
public static void main(String[] args) {
User user = new User();
user.setUserName("zbp");
user.setPassWord("123");
//下邊就是獲取字段和值得
//Class clazz = Class.forName("User");
Class clazz = User.class;
//獲取所有字段
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);//強制設置屬性可訪問,如果是私有域,沒有設置這個會報錯
//field.get() 方法獲取字段的值
System.out.println("FieldName:" + field.getName() + " value:" + field.get(user));
}
}