static和瞬态_具有瞬态属性的视图对象的钝化和激活

static和瞬态

在应用程序模块的钝化/激活周期内,框架也将钝化并激活视图对象。 通常,框架保存有关VO状态,当前行,绑定变量值等的信息。 但是没有数据。 激活视图对象后,将重新执行VO的查询,并重新获取数据。 在大多数情况下,查询执行不是在激活阶段期间或之后执行的,而是推迟到真正使用视图对象之前执行。 这种行为是很合逻辑的。 假设我们的应用程序由几个页面组成,这些页面代表不同视图对象的数据。 如果我们从同一页面向服务器发送请求,则将执行仅在该页面上使用的VO。 其他页面上使用的所有其他视图对象也将被钝化和激活。 但是除非我们要求框架通过导航到特定页面来执行此操作,否则它们将不会重新执行。 那太酷了! 这意味着我们不会执行不必​​要的查询,也不会浪费我们的内存。 但是在某些情况下,框架在激活阶段执行VO的查询执行却不会打扰我们是否真正使用VO。

其中一种情况是有关使用瞬态VO的属性。 常见的建议是不要钝化此类属性。 但是,有时会使用瞬时属性来存储一些自定义数据,并使用钝化/激活机制作为保存此数据并使之保持活动状态的便捷方法。 请谨慎使用此方法。 如果瞬态属性的任何值被钝化,则框架将在视图对象激活期间执行查询。

让我们考虑一个包含两页的示例应用程序-员工和部门。

屏幕截图2013年7月19日下午2.31.00

我们使用基于SQL的只读视图对象浏览两个页面上的数据:

屏幕截图2013年7月19日下午2.35.18

屏幕截图2013年7月19日下午2.36.18

因此,所有VO的属性都是瞬态的,我们不会对其进行钝化。 应用程序模块池已禁用:

屏幕截图2013年7月19日下午2.43.59

利用ODLA探索从“员工”页面发送的请求,我们可以看到以下内容:

屏幕截图2013年7月18日下午6.55.10

在应用程序模块激活阶段没有任何查询执行。 VEmployees查询已按预期在准备模型阶段执行。

现在让我们更改VDepartments属性之一的钝化参数:

屏幕截图2013年7月19日下午2.55.14

我将使用“部门”页面启动该应用程序,以便执行VDepartments VO,然后导航到“员工”页面。 从雇员页面发送下一个请求(例如对表进行排序),我们将获得以下图片:

屏幕截图2013年7月18日下午6.32.44

显然,除了执行VEmployees查询外,框架还执行VDepartments。 VDepartments在激活应用程序模块期间执行。 我们真的需要吗? 我们在浪费CPU资源来执行不必要的查询,并在浪费内存来存储未使用的视图对象的查询集合。 该框架针对具有任何动态属性的视图对象和设置了保留视图链接访问器的主视图对象,演示了相同的行为。 因此,请注意这些功能。

而已!

参考: ADF实践博客上的JCG合作伙伴 Eugene Fedorenko提供的具有瞬态属性的视图对象的钝化和激活 。

翻译自: https://www.javacodegeeks.com/2013/07/passivation-and-activation-of-view-objects-with-transient-attributes.html

static和瞬态

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/347418.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

你是不是已经超纲了?一文解决JavaWeb中要求的HTML,是什么样的?

文章目录一、正经的开始 👩🏻👩🏻👩🏻二、HTML简介1、HTML“化简为繁”2、超文本“醉翁之意”3、标记“画地为牢”4、永远的HelloWorld5、HTML文件“解衣”6、HTML“潜规则”三、使用HTML展示文章1、标题“…

自适应滤波实例之噪声抵消

实验模型 s(n)是立体声音乐信号,fs=8kHz,平均功率为0.0047; v(n)是零均值高斯白噪声,方差为1; h(n)是由5阶FIR低通滤器模拟,带宽为[0, 0.35fs]; 目标:d(n)中包含音乐信号s’(n)和白噪声v’(n),v’(n)为v(n)经过系统h(n)后的输出,则x(n)=v(n)与v’(n)具有相关性,利…

初学JavaWeb,前端css要不要了解一下啊?一文学会JavaWeb中css的简单应用

文章目录一、设置CSS样式二、CSS代码语法三、CSS选择器四、css文档手册分享关于JavaWeb中的HTML:《你是不是已经超纲了?一文解决JavaWeb中要求的HTML,是什么样的?》 一、设置CSS样式 有三种设置方式。 1、在HTML标签内设置&#…

堆栈图解CSAPP Bomb Lab实验解析

CSAPP Bomb Lab 实验解析 Bomblab是csapp的第二个配套实验,该实验提供了一个bomb二进制文件和一个bomb.c源文件,我们的目标是运行bomb并按照提示一步步输入字符串,直到完成整个拆炸弹的流程。但是源文件中只提供了部分代码,所以我…

初学JavaWeb需要的前端js,JavaScript是什么样的?

文章目录一、JavaScript简介二、HelloWorld三、JavaScript基本语法四、DOM五、JavaScript事件驱动六、网页制作完全手册分享关于HTML和css详见:《JavaWeb中的HTML和css》 一、JavaScript简介 1、起源 1995年,JavaScript由Netscape公司的Brendan Eich在网…

踩坑+排雷新版IDEA2021.1创建配置Javaweb项目并部署在Tomcat容器,完整详细

前些天发现了十分不错的人工智能学习网站,通俗易懂,风趣幽默,没有广告,分享给大家,大家可以自行看看。(点击跳转人工智能学习资料) 微信公众号:创享日记 发送:tomcat 获取…

微机原理实验1:字符串匹配程序实验

一、实验目的 1.掌握分支程序的设计方法。 2.熟悉在PC机上建立、汇编、链接、调试和运行8086汇编程序的过程。 二、实验内容 1.比较两个字符串STRING1和STRING2所含的字符是否相同,若相同则显示‘Match’,否则显示‘…

终于让Web前端和Tomcat(Java服务器)和MySQL(数据库)连在一起了

文章目录一、先在Web前端来个表单二、添加Tomcat依赖三、引入jdbc和dbutils四、编写Servlet类五、关联模块《踩坑排雷新版IDEA2021.1创建配置Javaweb项目并部署在Tomcat容器》 一、先在Web前端来个表单 如图在web项目目录下创建一个html文件。 文件内容可以参考如下。 <!D…

微机原理实验2:多字节BCD加法实验

一、实验目的 掌握数据传送、算术指令和循环指令的用法。 二、实验内容 将两个多位十进制数相加。要求加数,被加数均以ASCII码形式存放在以DATA1和DATA2为首的5个内存单元中( 低位在前)&#xff0c;结果存在DATA1处。 三、程序清单 CRLF MACRO …

微机原理实验3:键盘输入与显示实验

一、实验目的 了解移位指令的使用方法。 掌握子程序的调用方法&#xff0c;了解子程序的入口参数和出口参数。 二、实验内容 将键盘接收的四位十六进制数转换为二进制数&#xff0c;并显示在屏幕上。 三、程序清单 CRLF MACRO ;建立宏命令&a…

【JavaWeb】HTTP协议请求响应全解

文章目录一、HTTP简介二、请求报文三、请求方式四、媒体类型五、响应报文一、HTTP简介 HTTP&#xff1a;Hyper Text Transfer Protocol 超文本传输协议。HTTP最大的作用就是确定了请求和响应数据的格式。浏览器发送给服务器的数据&#xff1a;请求报文&#xff1b;服务器返回给…

【JavaWeb】一文Servlet全解:继承关系、生命周期、容器和请求转发与重定向等

文章目录一、Servlet 概述二、Servlet HelloWorld三、Servlet 继承关系四、Servlet 生命周期五、ServletConfig 和 ServletContext六、请求转发与重定向七、获取请求参数一、Servlet 概述 1、Servlet名字 Servlet Server applet Server&#xff1a;服务器 applet&#xff1a;…

微机原理实验4:统计学生成绩

一、实验目的 掌握比较综合性的汇编程序设计流程&#xff0c;以及多分支情况下程序的设计技巧。 二、实验内容 设计程序统计学生数学成绩。分别归类90-99分、80-89分、70-79分、60-69分及60分以下&#xff0c;并将各段的人数及成绩存入对应的内存单元中&#xff0c;并在屏幕…

Spring Boot的Spring Data JPA示例

1.简介 在本文中&#xff0c;我们将演示如何利用功能强大的Spring Data JPA API与本课程中的数据库&#xff08;内存中的H2数据库&#xff09;进行交互。 Spring Data JPA提供了一组非常强大且高度抽象的接口&#xff0c;用于与任何基础数据库进行交互。 数据库可以是MySQL&am…

为什么写路径这事有点复杂?动态Web工程内编写路径【JavaWeb】

文章目录一、为什么要写路径&#xff1f;二、为什么写路径这事有点复杂&#xff1f;三、准则四、写路径的步骤五、动态获取上下文路径一、为什么要写路径&#xff1f; 整个系统要根据功能拆分成许许多多独立的资源资源之间既要完成自身的功能又要和其他资源配合写路径就是为了从…

Windows编程初步(一)

第一节&#xff1a;安装帮助文档 使用C语言进行Windows开发&#xff0c;必然使用到WindowsSDK。Windows SDK指Windows开发人员工具包&#xff0c;是为使用C语言开发Windows程序所提供的工具集。里面提供的工具异常全面丰富&#xff0c;很少有人能全部了解&#xff0c;在开发Wi…

2022大学生免费(24元)申请个人软著专利(微信小程序)

文章目录一、发放的软著证书二、申请流程概览三、官网提交申请四、纸质材料打印五、纸质材料邮寄六、模板及代码统计工具点击查看《再易江南》微信小程序 一、发放的软著证书 挂号信封 软著证书 点击查看《再易江南》微信小程序 二、申请流程概览 一般情况下&#xff0c;按照文…

Windows编程初步(二)

第二节&#xff1a;简单的Windows程序&#xff08;二&#xff09; 下面为这个程序增加一个菜单项&#xff1a; 首先设计用户菜单。在工作区里找到资源视图。点击Menu左边的号&#xff0c;双击出现的IDC_WIN_STEP1菜单。 图7 资源视图中的菜单 将help右边的虚框拖入左侧File菜…

Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3

题目描述&#xff1a; 给定一系列正整数&#xff0c;请按要求对数字进行分类&#xff0c;并输出以下5个数字&#xff1a; A1 能被5整除的数字中所有偶数的和&#xff1b; A2 将被5除后余1的数字按给出顺序进行交错求和&#xff0c;即计算n1-n2n3-n4…&#xff1b; A3 被5除后…

Windows编程之互动与动画

第五节&#xff1a; 考虑屏幕左侧一台坦克&#xff0c;向水平方向发射一枚炮弹,穿越屏幕。 很自然地&#xff0c;这场景中有坦克和炮弹两个对象&#xff0c;各自有各自坐标&#xff0c;坦克坐标是固定的&#xff0c;而炮弹坐标是变化的。因此有两个结构体类型&#xff1a;Tank…