jsf in action 笔记:bean的创建和初始化(四)(List,Map作为单独的managed bean)--2008.04.13

本文介绍在JavaServer Faces (JSF)框架中如何配置List和Map类型的Managed Bean。通过XML配置文件示例展示了如何指定List的具体实现类、初始化条目以及声明Map类型的Bean并设置键值对。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2008.04.13 摘自 JSF in action 3.3.2 Declaring Lists and Maps as managed beans Page/157 

1.  上一篇 jsf in action 笔记:bean的创建和初始化(三)(List,Map属性)--2008.04.12 只是讲了bean的属性类型为List,Array,Map时,属性的初始化配置,但如果创建一个单独的List,Map(Array不允许创建一个单独的Managed bean)Managed Bean的话,配置还是有一点不一样的.

2.  初始化一个List对象时的.xml文件的元素(Elements)结构图如下:JSF Declaring List as managed beanFigure 3.10 To declare a List as a managed bean, you must specify a <managed-bean-class> that is a concrete List implementation, and use the <list-entries> element as a child of the <managed-bean> element. Each <list-entries> element can have one or more <value> (or <null-value>) elements and a single <value-class> element.

  • <managed-bean-class> 必须为List的接口的一个具体的实现类
  • <managed-property> 被<list-entries>替换了
  • <value-class>只能使用一次
  • <value>或<null-value>可以使用一次或多次

3.  示例代码如下:

<managed-bean>
<description>List of favorite sites.</description>
<managed-bean-name>favoriteSites</managed-bean-name>
<managed-bean-class>java.util.ArrayList</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
<list-entries>这里不同
<value>http://www.jsfcentral.com</value>
<value>http://www.theserverside.com</value>
</list-entries>
</managed-bean>

4.  声明Map类型的一个Managed bean与List很相似,只是把<list-entries>换成了<map-entries>,多加了<map-entry><key>及<ke,示例代码如下:

<managed-bean>
<description>List of favorite sites, keyed by name.</description>
<managed-bean-name>favoriteSitesMap</managed-bean-name>
<managed-bean-class>java.util.HashMap</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
<map-entries>这里不同
<map-entry>这里不同
<key>JSF Central</key>
<value>http://www.jsfcentral.com</value>
</map-entry></map-entries>
</managed-bean>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值