如何知道某个bean的属性列表?

脆爽 2010-04-21 11:49:29
public class WhereBean {
private String xinghao = null;
private String danwei = null;

通过什么方法可以知道这个类里所有的属性名?
并将名称转换为字符串?
...全文
97 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yugong2009 2010-04-21
  • 打赏
  • 举报
回复

Class c = WhereBean.class();
for(Field field : c.getFields() ){
field.getName();//得到名字
Class type = field.getType();
type.getName();//得到类型名
}
脆爽 2010-04-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bao110908 的回复:]
属性和成员变量是不一样的,先确定一下需要什么!
[/Quote]
我想要这个里面的xinghao,danwei这两个名字和他的类型
  • 打赏
  • 举报
回复
属性和成员变量是不一样的,先确定一下需要什么!
ladofwind 2010-04-21
  • 打赏
  • 举报
回复
Class c = WhereBean.class();

Propertie[] p = c.getProperties();

大概这个意思,自己查API
  • 打赏
  • 举报
回复
那你要的是成员变量。

代码如下:

import java.lang.reflect.Field;

public class Test2 {

public static void main(String[] args) {
Field[] fields = WhereBean.class.getDeclaredFields();
for(int i = 0; i < fields.length; i++) {
System.out.println("type: " + fields[i].getType().getName() + ", name: " + fields[i].getName());
}
}
}
欢乐极客 2010-04-21
  • 打赏
  • 举报
回复
反射机制。。多看API自己就能解决了。。
脆爽 2010-04-21
  • 打赏
  • 举报
回复
Class<? extends WhereBean> cls=WhereBean.class;
Field[] field = cls.getDeclaredFields();

for(int i=0;i<field.length;i++){
System.out.println(Modifier.toString(field[i].getModifiers())+"]["+field[i].getType().getName()+"]["+field[i].getName());
}

自己搞定,谢谢楼上的热心人
zhuzhusany 2010-04-21
  • 打赏
  • 举报
回复
类信息用反射能得到

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧