viewobject

介绍

声明式SQL模式被认为是基于实体的视图对象的最有价值的优点之一。 在这种模式下,根据UI中显示的属性在运行时生成VOSQL。 例如,如果某个页面包含一个只有两列EmployeeId和FirstName的表,则查询将生成为“从Employees中选择Employee_ID,First_Name”。 此功能可以大大提高ADF应用程序的性能。 但是, 只读或基于SQL的视图对象呢? JDeveloper不允许您为基于SQL的VO选择SQL模式。 完全可以使用“专家”模式,而没有机会即时生成查询。 但是,一切皆有可能。

在这篇文章中,我们有一些基于SQL的视图对象VEmployees的示例:

让我们生成“视图对象定义”类:

我们将重写一些方法:

@Overridepublic boolean isRuntimeSQLGeneration(){return true;}@Overridepublic boolean isFullSql(){return false;}@Override//In our case we know exactly the clause FROMpublic String buildDefaultFrom(AttributeDef[] attrDefs,SQLBuilder builder,BaseViewCriteriaManagerImpl vcManager){return "Employees";}@Override//Setting "Selected in Query" property for each attribute except PKprotected void createDef(){for (AttributeDef at : getAttributeDefs()) if (!at.isPrimaryKey()) ((AttributeDefImpl) at).setSelected(false);   }

其实就是这样! 让我们测试一下。

对于显示完整属性集的页面,我们得到结果:

并生成查询(我使用ODL分析器):

对于只有两个属性的页面,我们得到以下结果:

和查询:

本文的示例应用程序需要JDeveloper 11.1.2.1.0和标准HR模式。

参考:来自ADF实践博客的JCG合作伙伴 Eugene Fedorenko的只读ViewObject和声明性SQL模式 。

翻译自: https://www.javacodegeeks.com/2012/07/read-only-viewobject-and-declarative.html

viewobject

viewobject_只读ViewObject和声明性SQL模式相关推荐

  1. 只读ViewObject和声明性SQL模式

    介绍 声明式SQL模式被认为是基于实体的视图对象的最有价值的优点之一. 在此模式下,根据UI中显示的属性在运行时生成VO的SQL. 例如,如果某个页面包含一个只有两列EmployeeId和FirstN ...

  2. 今日 Paper | 模态平衡模型;组合语义分析;高表达性SQL查询;多人姿态估计模型等

    2020-02-07 14:23 导语:为了更好地服务广大 AI 青年,AI 研习社正式推出全新「论文」版块.   目录 视觉对话的模态平衡模型 对注意力的通用攻击和对应的数据集DAmageNet 半 ...

  3. 数据库事务隔离级别+Spring 声明性事务隔离级别

    数据库事务隔离级别 数据库提供了四种事务隔离级别, 不同的隔离级别采用不同的锁类开来实现. 在四种隔离级别中, Serializable的级别最高, Read Uncommited级别最低. 大多数数 ...

  4. 安卓ui xml_创建声明性XML UI语言

    GUI开发可能是一项艰巨的任务. GUI框架的文档记录并不总是很好,所需的代码量可能会快速增长,从而减慢了开发流程. 最重要的是,支持这些GUI框架的拖放工具和IDE通常可以引导GUI软件开发人员创建 ...

  5. html+服务器控件语法,HtmlForm 服务器控件声明性语法

    HtmlForm 服务器控件声明性语法 08/20/2007 本文内容 创建一个服务器端控件,该控件映射到 HTML 元素并允许您为网页中的元素创建一个容器. DefaultButton=" ...

  6. MySQL SQL模式(Mode)

    MySQL服务器能够工作在不同的SQL模式下,并能够针对不同的客户端以不同的方式应用这些模式.这样,应用程序就能对服务器进行量身定制以满足自己的需求.这类模式定义了MySQL应支持的SQL语法,以及应 ...

  7. mysql sql模式_MySQL SQL模式特点汇总

    前言 MySQL服务器可以在不同的SQL模式下运行,并且可以针对不同的客户端以不同的方式应用这些模式,具体取决于sql_mode系统变量的值.DBA可以设置全局SQL模式以匹配站点服务器操作要求,并且 ...

  8. html input submit 执行,HtmlInputSubmit 服务器控件声明性语法

    HtmlInputSubmit 服务器控件声明性语法 05/28/2012 本文内容 [本文档仅供预览,在以后的发行版中可能会发生更改.包含的空白主题用作占位符.] 创建一个服务器端控件,该控件映射到 ...

  9. mysql的服务器在什么模式下工作_MySQL服务器的SQL模式 (转)

    转自: http://blog.csdn.net/kumu_linux/article/details/8185912 sql_mode的系统变量可以调控MySQL的SQL模式 任何一个客户端可以在不 ...

最新文章

  1. Windows XP Ghost系统安装
  2. python web 框架(八)-- Scrapy
  3. [转]计算机学习道路
  4. 将一句话的单词进行倒置,标点符号不倒换。比如一句话:“i love you.”倒换后变为you. love i
  5. 黄老师离开呆了十年的上海
  6. primefaces_PrimeFaces 5.0 DataTable列切换器
  7. JavaFx导出文件
  8. 计算机指令要素,【计算机系统】CPU指令执行流程与指令流水线原理
  9. java 线程 内部_从Java中的main()内部在线程实例上运行wait()
  10. kotlin半生对象_Kotlin单一对象,Kotlin伴侣对象
  11. ofstream的使用方法
  12. iOS -- MBProgressHUB
  13. selenium模拟点击的几种方法探讨
  14. make: *** 没有规则可制作目标“distclean”。 停止。_最全攻略资料|普华永道PwC(四大笔试)游戏测试GBA经验分享(图片+规则+建议)...
  15. Confluence OGNL表达式注入漏洞复现与分析(CVE-2022-26134)
  16. 程序员考证之信息系统项目管理师
  17. 航飞影像的GPS坐标导出、修改、写入(EXIF信息)
  18. 高中英语语法(001)-虚拟语气
  19. 剪辑师的基本素养--了解四种特写类型
  20. mysql将小数取整,mysql的取整函数

热门文章

  1. Java 常见的 30 个误区与细节
  2. sqlserver建库建表建约束,删库删表删约束的示例总结
  3. Photoshop基本操作
  4. ssm使用全注解实现增删改查案例——DeptServiceImpl
  5. 并查集判断是否有环存在
  6. 狂神说spring笔记
  7. MySQL笔记汇总---狂神说
  8. html让时间只展示年月日_如何用html写代码,使得在网页上显示当前的时间和日期...
  9. thinking-in-java(16) 数组
  10. AOP切点表达式及通知类参数传递方式