利用 Java Reflection 输出 JavaBean 到 XML(0分)

Y

yysun

Unregistered / Unconfirmed
GUEST, unregistred user!
import java.lang.reflect.*;
public class Base {
public String toString() {
Class cls = this.getClass();
String tagname = cls.getName();
String xml = "<"+ tagname + ">";
Field fieldlist[] = cls.getDeclaredFields();
for (int i = 0;
i < fieldlist.length;
i++) {
Field fld = fieldlist;
String fieldname = fld.getName();
String ch1 = fieldname.substring(0,1).toUpperCase();
String methodname = "get" + ch1 + fieldname.substring(1);
try {
Method method = cls.getMethod(methodname, null);
Object retobj = method.invoke(this, null);
boolean ok = true;
if (retobj == null) {
ok = false;
}
else
if (fld.getType().getName()=="int") {
if (((Integer)retobj).intValue()<=0) ok = false;
}
if (ok) xml += "<" + fieldname + ">" + retobj + "</" + fieldname + ">";

}
catch(Exception ex) {
}
}
xml += "</"+ tagname + ">";
return xml;
}
}
例如,可以定义您的 JavaBean 为上述 Base 类的子类
public class MyBean extends Base {
private int id;
public int getId() { return id;
}
public void setId(int v) { id = v;}
public MyBean () {}
}
创建这个 Bean,赋值后就是输出 XML
MyBean mb = new MyBean();
mb.setId(100);
System.out.println(mb.toString());
结果是:
<MyBean><id>100</id></MyBean>
欢迎您试试更加复杂的 Java Bean。
 
不好意思,我不懂XML,本来不该插嘴的。
可是孙老师能不能有空给我们讲一讲 XML 的概念、作用和好处(以及就业前景)等。语法就算了吧。
老是和几个高手讨论来讨论去,忘记了老师还可以教学生一些知识。
另外,感觉这里的 Jsp和 java冷清,总是就这么几个人。高手就更少了。(当然,我也是个大菜鸟,刚开始学Java)
大家一起想想办法?
 
找一些 经典入门文章, ctrl + c , ctrl + v 就行了。
我想大家都会很高兴的。
 
推荐一个不错的网站:www.china-jsp.net!
 
孙老师能不能帮我看看:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=999283
weblogic“不支持”中文url的问题???
 
顶部