【发布时间】:2014-04-13 10:55:07
【问题描述】:
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.net.UnknownHostException;
import java.util.ArrayList;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;
public class MongoTest {
/**
* @param args
* @throws UnknownHostException
* @throws ClassNotFoundException
* @throws IllegalAccessException
* @throws IllegalArgumentException
*/
public static void main(String[] args) throws UnknownHostException, ClassNotFoundException, IllegalArgumentException, IllegalAccessException {
Employee employee= new Employee();
employee.setFirstname("Durga Dutt");
employee.setLastname("Pandey");
employee.setAge(28);
employee.setSalary(100035);
Class<?> cl= Class.forName("Employee");
Field[] fields= cl.getDeclaredFields();
for(int i=0;i<fields.length;i++)
{
System.out.println(fields[i].get(employee));
}
}
}
以上程序正在返回公共字段的值,但不适用于私有成员。我已经在我的 POJO 类中声明了 getter 和 setter。
有什么想法吗?
【问题讨论】:
-
好的,我明白了。这是诀窍:fields[i].setAccessible(true);
标签: java