java JSF 如何把datatable的一列变成多列??

数据库里为123456我想显示为142536... 数据库里为
1
2
3
4
5
6
我想显示为
1 4
2 5
3 6
展开
 我来答
jamxval
2012-12-06 · TA获得超过6823个赞
知道大有可为答主
回答量:4308
采纳率:82%
帮助的人:1438万
展开全部
以前使用 JSF 1.1 时,我知道 DataTableModel 可以定制的,默认它是用一个 index 来计算出当前需要从 mode 中拿哪条记录。 因此,你的 DataTableModel 呢想办法让计算 getRowCount的方法返回 (int) count / 2,这样,每次 get 时你返回一个对象由 {odd, even} 连个记录组成的一对。 setRowIndex 时每次 index * 2 跳一格。

以后就用${item.odd} 和 ${item.even} 来访问,或者每次 getRowData 时返回一个数组也行。这个 DataModel 的实现应该是通用的,如果3列每次 getRowCount 返回 (int) count / 3; seRowIndex() 时 index * 3 每次跳2格,因为每次 getRowData() 时已经拿了index * 3 +1 , + 2, +3 个一共 3个记录。

你的实现类应该是一个装饰的 DataModel,接受一个参数,它就是原始的 DataModel,去拿真实数据还是从原来的 Data Model 中按原来的方法拿 。只是我们在 getRowData 和 setRowIndex 上做手脚。

找个 javax.faces.model.DataModel 的实现类的样例看看。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式