ADF实现单表维护

AM的实现类是用来实现存在AM中的VO的相关操作

在表单中新建行的算法(参数hashtable<String,Object>)

1.获得VO传递给VOI

2.VOI创建新行,并在?处insert(新行)

3.判断新增行是否为空(考虑到表中行应该有default值)

4.如果不为空用Set集合存储一下hash中的键,用hashtable的keyset()方法

5.做一个for循环,条件可以是(String keys : Set<String> attrkeys),用来依次把Set键对应的值插入到新的每列中

createRow.setAttribute(keys,hashtable<String,Object>.getAtrribute(key));

?.insert新行

6.setcurrentrow

在表单中删除行的算法

1.页面中在deleteButton键上可以嵌入一个af:showpopupbehavior标签,三个属性triggerType ="action" popupid = "confirm" align= "afterEnd"

2.之后自己写一个<af:popup>     其中id = "confirm" 声明一个dialog,其中加两个 button,确认button键上加上actionListern绑定delete方法

3.delete方法参数为ActionEvent型

4.Row deletedRow = getAM().getVO().getCurrentRow();

5.因为是执行删除操作,所以getAM().deleteCurRow()

在表单中查询行的算法

查询表单时,表单的列应该是只读。这样在bean中应该设一个只读get set函数,来绑定每个列的readOnly属性 #bind{pageflow.managedBean.DisableFlag},在view方法中设置为false.\

在表单中复制行的算法

1.获得VO :viewobjectImpl voi = (ViewObjectImpl)findViewObject(this.voname);

2.得到当前行Row curRow = voi.getcurrentRow();

3.创建行记录Row createRow = voi.creatRow();

4.如果选择行不为空,则复制   if(curRow!=null&&attributes!=null)

5.for循环,循环条件为 String attName:attributes

createRow.setAttributes(attName,curRow,getAttribute(attName));

6.添加新记录到VO

voi.insertRow(creatrow)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值