现在的位置: 首页 > 综合 > 正文

在ADF中使用AlternateKey进行查询

2013年07月25日 ⁄ 综合 ⁄ 共 1191字 ⁄ 字号 评论关闭

概述

      在ADF中,实现对VO查询的方法有多种,例如:

      1、Designtime时添加相应的Criteria,增加Criteria项并关联到绑定变量,在runtime时赋值给绑定变量并实现查询。

      2、在Runtime时使用代码动态创建Criteria和CriteriaRow,以实现查询

      3、其他

      而当VO对应的主EO中已经定义了唯一性索引,此时有更为简便的方式实现查询,即本文中即将进行说明的使用AlternateKey进行查询。

 

实现

1、创建新应用,新建数据库连接,基于HR Schema中的employees表创建EO、VO并将VO的实例添加到AM中。

2、打开EO,即Employees,在General面板中添加名为EmailAlternateKey的AlternateKey,由于employees表中有唯一性索引EMP_EMAIL_UK是基于Email字段的,因此在EmailAlternateKey中将Email选到Seleted。

3、在EmployeesView的General面板中同样新建名为EmailAltKey的AlternateKey,在Entity-level Alternate Key中选择在上个步骤中创建好的EmailAltKey。

4、生成AM的实现类,在AM中添加适当代码,以实现查询功能。

5、在AM的Java面板中,将刚编写完成的方法发布到Client Interface,以便下面我们使用业务组件浏览器进行测试。

6、在AM上点击右键,选择“Run”,使用业务组件浏览器进行测试。选择到刚发布成功的方法,运行后在参数输入框内输入已经存在的Email,这里为“SKING”,运行成功:)

7、为验证AltKey使用的是数据表中的唯一性索引,开启日志,重新运行后将日志中的SQL拷贝到PL/SQL Developer中的Explain Plan Window,执行后发现使用的查询为“INDEX UNIQUE SCAN”且对应的Object Name为EMP_EMAI_UK,说明此查询使用的确实是唯一性索引。

 

本文转自Oracle Seeker:http://oracleseeker.com/2009/09/05/adf_altkey_alternatekey_query/

抱歉!评论已关闭.