Bạn có thể sử dụng BeanInfo qua BeanIntrospection như sau:
Object o = new MyBean();
try {
BeanInfo bi = Introspector.getBeanInfo(MyBean.class);
PropertyDescriptor[] pds = bi.getPropertyDescriptors();
for (int i=0; i<pds.length; i++) {
// Get property name
String propName = pds[i].getName();
// Get the value of prop1
Expression expr = new Expression(o, "getProp1", new Object[0]);
expr.execute();
String s = (String)expr.getValue();
}
// class, prop1, prop2, PROP3
} catch (java.beans.IntrospectionException e) {
}
Hoặc bạn có thể đi với phương pháp phản xạ bằng một trong những phương pháp sau đây:
- Nhận tất cả không có tham số getXXX() phương pháp thông qua getDeclaredMethods và duyệt qua chúng
- Nhận tất cả các trường bằng cách sử dụng getDeclaredFields() và duyệt qua chúng (Không tuân thủ thông số Bean, nếu bạn quan tâm)
Nguồn
2012-05-26 09:16:32
toString() là một phương pháp. Không phải là một tài sản đậu. chính xác là bạn muốn làm gì? Bạn đã duyệt javadoc java.lang.Class chưa? –
Nếu đây là bên trong Eclipse và bạn hài lòng với mã được tạo ra, thì hãy xem xét chỉ để cho Eclipse tự tạo ra nó. Tìm trong menu chuột phải-> nguồn. –