这是页面控件部分
public class TestBean {
private String label;
private String value;
private String id;
private String name;
......
setter,getter省略
}
public class TestForm {
private List testBeanList;
private String companyCode1;
private String companyCode2;
setter,getter..
}
问题:从service层抓出DB资料,然后迭代,将每笔资料封装成TestBean,一个个add进一个list,然后返回到action层,
在action层testForm.setTestBeanList(list),然后返回页面显示。
我感到疑惑的是,在解析html:optionsCollection标签的时候,从testBeanList中取的值不应该是一个个object么?
jsp页面没有import TestBean,这些取出来的Object是如何被转换成testBean的,或者根本就没有被转化为testBean
而是通过其他方式去取值?
我找了下struts的源码看了一下,struts在处理类似事件时都是调用的Commons-Beanutils包来处理。
Commons-Beanutils 这个是jakarta commons项目中的一个子项目。
这个项目研发的目的是帮助研发者动态的获取/设值Java Bean的属性,同时解决每次都要写getXXX和setXXX的麻烦。
由于工作时间比较紧张,所以source code只看了一点,还是有点疑惑,如果说是用的类反射机制,那么参数只需要用一个object参数就能知道该类是什么类型了么。
今天工作完了回家好好研究,也希望高手能给予指点,谢过!