ADF成长记1--认识ADF
2014-07-08
近段时间由于公司项目需要,开始接触Oracle ADF。都说有事没事,上百度,但是对于IT技术而言,上百度还真是不一定好使,至于谷歌嘛,很不巧的进不去了。不过网上ADF的资料当真是少得可怜啊,好不容易找到一本还是纯英文的,边看边查,一天下来,那是一个头昏脑胀啊。现在网上算是比较好的资源也就是Oracle ADF自己的官网了http://www.oracle.com/technetwork/developer-tools/jdev/documentation/index.html。为了便于大家更好的学习这个技术,也为了我自己能更好的梳理和使用这个技术,以后我会将学习ADF的每一个阶段整理出来,和大家一起交流。
--如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/3831191.html "谢谢--
下面先让我们来认识何谓ADF?
ADF简介
ADF即Application Development Framework,是Oracle为简化JAVAEE复杂性而提供的一个end-to-end(即端到端)的类似MVC框架的解决方案。他通过提供现成的基础架构服务和虚拟的声明式开发体验,将业务逻辑层和UI界面层完全的隔离,减少了实现设计模式和应用程序框架的代码量,简化了开发。它有着丰富的客户端组件,可同时进行多层模块开发,但是它的简化只是对于熟悉这个框架的人而言,其操作上的复杂性,让很多程序员望而生畏,上手难度4颗星。
ADF的分层
ADF是一个类似于并且合乎MVC规范的框架,在ADF当中,它被分成了四层,分别是:
View 层 :视图层——ADF Faces/JSF
Controller :控制层——ADF Manager Bean
Module :模型层——ADF Module
Business Service :业务服务层——ADF BC
如图:

图1.1ADF 体系图
ADF的生命周期
ADF的生命周期可以用典型的MVC模式来理解:
1.用户在View层请求服务;
2.Contorl层将用户请求传递给Module层;
3.Module层根据用户请求操作数据库,获取结果集
4.业务服务层(ADF BC)对结果集进行业务处理,响应Contorl层;
5.Contorl层将获得的数据返回View层,展示给用户。
如图:

ADF的运用
对于ADF来说,业务组件即ADF Business Components就是他的核心,它就相当于我们的大脑,控制着整个程序的流程。
以下是对于ADf的运用:
- 建立ADF Business Components(ADF 业务组件)。
- 在BC中建立另外三个层,分别是:
- Entity Object(实体对象层)——EO;
- View Object(数据访问视图层)——VO;
- Application Modules(接口层)——AM;
- 建立web页面——JSF Page。
- 建立了AM之后,Data Contorl会自动生成,拖动Data Contorl下的VO或者单个属性到web页面生成某个组件。
- Bindings,将要实现的业务逻辑方法绑定到组件,实现特定功能
如图:

ADF成长记1--认识ADF的更多相关文章
- 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)
6.4 工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...
- 你好,C++(30)“大事化小,小事化了”5.4.3 工资程序成长记:函数
5.4.3 工资程序成长记:函数 自从上次小陈“程序员”的工资程序得到老板的夸奖,口头许诺给他涨工资以后,老板再也没有找过他,涨工资的事自然也就没有下文了.这天,老板又突然召他去办公室.这下可把小陈高 ...
- 你好,C++(23) 4.4.2 工资程序成长记:用数组处理批量数据,用循环结构执行重复动作
4.4 从语句到程序 了解了各种表达式和语句之后,就相当于掌握了写作文要用到的词语和句子,但是,仅有词语和句子是无法构成一篇有意义的文章的.要完成一篇文章,先需要确定这篇文章的结构,是先分述再总述, ...
- 菜鸟vimer成长记——目录
菜鸟vimer成长记——第0章.我眼中的vim学习 菜鸟vimer成长记——第1章.统一概念 菜鸟vimer成长记——第2.0章.模式初探 菜鸟vimer成长记——第2.1章.normal模式 菜鸟v ...
- ADF文件数据结构解析和ADF文件读写
包括位姿和特征点位置和描述信息. What does an Area Description File (ADF) looks like? 4down votefavorite 2 I'm start ...
- 蓝的成长记——追逐DBA(6): 做事与做人:小技术,大为人
***********************************************声明*************************************************** ...
- 蓝的成长记——追逐DBA(5):不谈技术谈业务,恼人的应用系统
***************************************声明*************************************** 个人在oracle路上的成长记录,当中 ...
- 蓝的成长记——追逐DBA(18):小机上WAS集群故障,由一次更换IP引起
原创作品.出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处.否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...
- 蓝的成长记——追逐DBA(10):飞刀防身,熟络而非专长:摆弄中间件Websphere
原创作品,出自 "深蓝的blog" 博客.欢迎转载,转载时请务必注明出处.否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...
随机推荐
- node 学习笔记 - fs 文件操作
本文同步自我的个人博客:http://www.52cik.com/2015/12/03/learn-node-fs.html 最近看到群里不少大神都开始玩 node 了,我感觉跟他们步伐越来越大了, ...
- Git.Framework 框架随手记--ORM新增操作
本篇主要记录具体如何新增数据,废话不多说,开始进入正文. 一. 生成工程结构 上一篇已经说到了如何生成工程结构,这里在累述一次. 1. 新建项目总体结构 使用VS新建项目结构,分层结构可以随意.我们使 ...
- iOS--雪花掉落特效
- (void)createAnimaton { // 实例化发射器 CAEmitterLayer *snowLayer = [CAEmitterLayer layer]; // 设置大小 snowL ...
- WebForm控件之DropDownList
DropDwonList 三件事: ------------------------------------------1.把内容填进去-------------------------------- ...
- Asp.Net MVC 中实现跨域访问
在ASP.Net webapi中可以使用 Microsoft.AspNet.WebApi.Cors 来实现: public static class WebApiConfig { public s ...
- Java设计模式-责任链模式(Chain of Responsibility)
接下来我们将要谈谈责任链模式,有多个对象,每个对象持有对下一个对象的引用,这样就会形成一条链,请求在这条链上传递,直到某一对象决定处理该请求.但是发出者并不清楚到底最终那个对象会处理该请求,所以,责任 ...
- Hibernate-入门教程
首先了解hibernate的目录结构 . +lib antlr.jar cglib-full.jar asm.jar asm-attrs.jars commons-collections.jar co ...
- python 学习笔记2(list/directory/文件对象/模块/参数传递)
### Python的强大很大一部分原因在于,它提供有很多已经写好的,可以现成用的对象. 11. list list是一个类.每个列表都属于该类. >>>nl = [1,2,5,3, ...
- Java编程思想学习(十三) java I/O
Java中使用流来处理程序的输入和输出操作,流是一个抽象的概念,封装了程序数据于输入输出设备交换的底层细节.JavaIO中又将流分为字节流和字符流,字节流主要用于处理诸如图像,音频视频等二进制格式数据 ...
- Windows Server 2008 显示桌面图标
相信有朋友们有安装使用过windows 2008 server服务器,刚安装好的时候,桌面上只有一个回收站的图标,它没有像windows 7或windows 8一样可以直接通过右击鼠标的菜单来设置,要 ...