JSF Gossip: Beans 上的 List、Map
来源:互联网 发布:360浏览器优化版 编辑:程序博客网 时间:2024/06/02 20:56
如果您的Bean上有接受List或Map型态的属性,则您也可以在组态档案中直接设定这些属性的值,一个例子如下:
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<list-entries>
<value-class>java.lang.Integer</value-class>
<value>1</value>
<value>2</value>
<value>3</value>
</list-entries>
</managed-property>
</managed-bean>
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<list-entries>
<value-class>java.lang.Integer</value-class>
<value>1</value>
<value>2</value>
<value>3</value>
</list-entries>
</managed-property>
</managed-bean>
....
这是一个设定接受List型态的属性,我们使用<list-entries>标签指定将设定一个List物件,其中<value- class>指定将存入List的型态,而<value>指定其值,如果是基本型态,则会尝试使用指定的 <value-class>来作Wrapper类别。
设定Map的话,则是使用<map-entries>标签,例如:
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>someKey1</key>
<value>100</value>
</map-entry>
<map-entry>
<key>someKey2</key>
<value>200</value>
</map-entry>
</map-entries>
</managed-property>
</managed-bean>
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>someKey1</key>
<value>100</value>
</map-entry>
<map-entry>
<key>someKey2</key>
<value>200</value>
</map-entry>
</map-entries>
</managed-property>
</managed-bean>
....
由于Map物件是以key-value对的方式来存入,所以我们在每一个<map-entry>中使用<key>与< value>标签来分别指定。
您也可以直接像设定Bean一样,设定一个List或Map物件,例如在JSF附的范例中,有这样的设定:
....
<managed-bean>
<description>
Special expense item types
</description>
<managed-bean-name>specialTypes</managed-bean-name>
<managed-bean-class>
java.util.TreeMap
</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>Presentation Material</key>
<value>100</value>
</map-entry>
<map-entry>
<key>Software</key>
<value>101</value>
</map-entry>
<map-entry>
<key>Balloons</key>
<value>102</value>
</map-entry>
</map-entries>
</managed-bean>
....
<managed-bean>
<description>
Special expense item types
</description>
<managed-bean-name>specialTypes</managed-bean-name>
<managed-bean-class>
java.util.TreeMap
</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>Presentation Material</key>
<value>100</value>
</map-entry>
<map-entry>
<key>Software</key>
<value>101</value>
</map-entry>
<map-entry>
<key>Balloons</key>
<value>102</value>
</map-entry>
</map-entries>
</managed-bean>
....
而范例中另一个设定List的例子如下:
....
<managed-bean>
<managed-bean-name>statusStrings</managed-bean-name>
<managed-bean-class>
java.util.ArrayList
</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<list-entries>
<null-value/>
<value>Open</value>
<value>Submitted</value>
<value>Accepted</value>
<value>Rejected</value>
</list-entries>
</managed-bean>
....
<managed-bean>
<managed-bean-name>statusStrings</managed-bean-name>
<managed-bean-class>
java.util.ArrayList
</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<list-entries>
<null-value/>
<value>Open</value>
<value>Submitted</value>
<value>Accepted</value>
<value>Rejected</value>
</list-entries>
</managed-bean>
....
- JSF Gossip: Beans 上的 List、Map
- JSF Gossip: Beans 的组态与设定
- JSF Gossip: Backing Beans
- JSF Gossip: JSF Expression Language
- JSF Gossip: 国际化讯息
- JSF Gossip: 标准转换器
- JSF Gossip: 自订转换器
- JSF Gossip: 动作事件
- JSF Gossip: 导航规则设置
- JSF Gossip: 错误讯息处理
- jsf的总结上
- jsf in action 笔记:bean的创建和初始化(三)(List,Map属性)--2008.04.12
- JSf Managed Beans (2)
- JSF---->Managed Beans
- jsf in action 笔记:bean的创建和初始化(四)(List,Map作为单独的managed bean)--2008.04.13
- JSF Gossip: 自订转换器 - 总结版
- 在Spring Beans中的JSF
- JSF days 2009 - Web Beans
- java rmi
- 利用command (cmd)命令,实现IP地址与主机名的互查
- 中國大陸開發商Triniti Games搶下北美付費應用程式第一名寶座
- 利用hibernate映射文件生成表
- asp.net 将中文汉字转换为英文首字母和将汉字转换为拼音全拼
- JSF Gossip: Beans 上的 List、Map
- 关于char *和char [ ]
- 通过sql语句找到列名字为‘date_3’的那一列对比的数据库字段不是固定的,要在date_1到date_10中筛选
- C语言的操作符优先级
- get mouse location
- JAVA很强大
- 基于Apache的Svn服务器配置
- 锐变2010,腾飞2011
- sybase中修改列名