ERP_基于Oracle ADF的定制化企业级IT系统解决方案

简介: 2014-12-31 Created By BaoXinjian 一、摘要 ADF(Application Development Framework)是Oracle公司为简化Java EE程序开发的复杂性专门开发的一种解决方案,是Oracle提供的下一代企业级应用开发框架。

2014-12-31 Created By BaoXinjian

一、摘要


ADF(Application Development Framework)是Oracle公司为简化Java EE程序开发的复杂性专门开发的一种解决方案,是Oracle提供的下一代企业级应用开发框架。

同时,Oracle ADF也是Fusion体系架构中最重要的技术之一和Fusion Application的核心技术,Oracle日后的几乎全部产品都将转到ADF框架。

1. 开放性

Oracle ADF可以充分利用Application Server的良好特性(尤其是WebLogic),

另外,Oracle ADF非常好的平衡了组件和编码,可以说既用组件、可视化、声明式的开发方式解决了简单、重复的劳动,又留下了自由编码的充分空间,在面对复杂应用时能够游刃有余。

2. 安全性

Oracle提供了完整的安全解决方案,提供基础的安全框架OPSS(Oracle Platform Security Services),一个基于标准的,可插拔的集成的企业级安全平台。

Oracle ADF提供了基于OPSS之上的安全组件ADF Security,实现基于ADF应用的企业级安全解决方案。同时ADF应用还可以集成Oracle Entitlements Server实现更细粒度的授权。

而Oracle所有的Fusion Fusion中间件(IDM、WebCenter、SOA/OSB、BPM、ODI、MDM等)和应用产品(升级后的EBS、Siebel、PS、Hyperion以及Fusion Application等),都是在OPSS基础之上实现安全解决方案,可以互相之间实现安全无缝连接。如果企业选择Oracle产品路线,那么Oracle ADF具有先天优势。

3. 扩展性

(1). Oracle ADF提供了200多个界面组件,完全可以满足常规应用,除此以外,可以基于这些组件方便地扩展出新的组件以满足错综复杂的业务需求。并且由于ADF是在JSF基础上的扩展,所有JSF的标准组件以及自定义组件也可以与ADF无缝集成。

(2). 从与其他Oracle产品关联性来看,Oracle ADF底层与其他Fusion中间件产品无缝集成,例如:BC部分借助于Oracle Database发挥更优良的特性、数据层及页面流可直接与Oracle Delivery Network集成实现基于消息事件的异步服务集成以及BPM/BPEL流程集成、展现层与WebCenter共同构建完整的企业门户。

此外,Oracle ADF作为满足J2EE标准规范的端到端解决方案及开发框架,可以方便地与其他开源技术/产品进行融合。

4. 框架能力

Oracle ADF,系统生命周期方面提供比了深入、全面的功能。比如个性化,是其基本功能,可以从系统和用户两个层次对界面元素、风格进行个性化定义而无需牵动原有系统设计和代码更改。比如Adapter,依赖Oracle“大而全”的产品线,Oracle ADF可以方便的使用各种现成的“知识库”性质的系统集成适配器。比如向导,Oracle提供了从简单到复杂、各种应用和对象的上百种向导功能,协助开发人员快速“初始化”应用和功能。

Oracle ADF应用开发框架是一个端到端的Java EE框架,它通过提供现成的基础架构服务以及可视的、声明式开发体验简化了开发。使用Oracle ADF构建RIA(Rich Internet Application)富互联网应用,基于Web 2.0的用户界面,带给用户高度互动性、丰富的用户体验以及功能强大的客户端:

  • 局部页面刷新
  • 立即验证
  • 拖放操作
  • 弹出窗口
  • 动态和复杂的布局
  • 类似桌面应用的交互
  • ......

 

二、ADF架构


ADF架构图

ADF架构图如下所示:

最佳实践来看,使用Oracle ADF来构建应用,你的应用将清晰分离业务逻辑、页面导航及用户界面并遵循模型、视图及控制器的MVC三层架构模式。如上图所示的ADF架构:

  • 模型层代表与当前页面相关的数据值(Model)
  • 视图层包含用于查看/修改数据的用户界面(View)
  • 控制器层处理用户输入并确定页面导航(Controller)
  • 业务服务层处理数据访问及封装业务逻辑(Business Service)

 

三、ADF架构说明


1. ADF 架构说明

  • Oracle ADF对应的每一层实现分别为:
  • 业务服务层—ADF Business Components
  • 模型层—Data Control和Bindings
  • 控制器层—Taskflow
  • 视图层—ADF Faces

 

1.1.  ADF Business Components

在以数据库为中心的业务逻辑中,ADF提供了下面三种关键部件: Entity Object, ViewObject, Application module。

这三层建立的顺序是这样的,先建立持久层的实体对象(Entity Object),然后建立数据访问层的视图对象(ViewObject),最后建立接口层(Application module)。

其中建立持久层的实体对象主要是和数据库的表或者同义词对象建立关联,数据访问层的视图对象(ViewObject)是基于实体层的实体对象建立的(当然也可以只建视图对象,不过这样就不是基于实体对象的,而是基于SQL),

主要是进行数据库的访问,而接口层是整个Business Service 层和Model层的接口,在数据访问层建立的视图对象需要注册到接口层中,这样在Model层中才可以访问。

 

1.2.  ADF Model

ADF model是ADF框架最核心的模块——它实现了JSR-227规范,包括两部分:Data Control和declarative bindings(声明式绑定)。

Data Control 通过使用标准元数据描述业务层中操作和数据集合(包括属性信息,方法调用等),从而抽象了业务逻辑的实现。

当开发人员创建好接口层 (Application module)时,Data Control也就自动创建好了,它包含了接口层中所有的功能。

也就是说所有访问业务对象的方法现在都通过Data Control来进行,这样使得绑定层使用一种方式来访问数据,不论后台的数据对象是如何获取得(数据库,webservice, javabean, csv等)。

可以把Data Control看做是一种代理机制,从而隔离了业务逻辑层和UI层。

 

1.3.  ADF Taskflow

ADF Controller在实现了JSF标准的基础上进行了扩展,提供了更大的页面流功能。

 

1.4.  ADF Faces

Oracle ADF Faces 是一组基于 JavaServer Faces JSR (JSR 127) 的功能齐全的用户界面组件。

ADF Faces Rich Client内建有AJAX功能的组件,已提供了超过100个富客户端组件,其中包括了内置Flash和SVG数据可视化组件。通过使用这些组件,用户带来极大的视觉冲击。

除了使用ADF Faces RC,Oracle ADF也对Apache MyFaces Trinidad视图技术提供了完全的支持。

 

四、ADF界面效果及组件展示


1.  ADF控件

 

2.  ADF图表 

 

 

Thanks and Regards

转载:得帆技术 - http://definesys.com/solution/adf/adfsolution.html

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
3月前
|
供应链 JavaScript 数据挖掘
一套SaaS ERP管理系统源码,生产管理系统源代码
小微企业SaaS ERP系统,基于SpringBoot+Vue+UniAPP开发,集成进销存、采购销售、MRP生产、财务、CRM、OA等全流程管理功能,支持自定义表单与工作流,助力企业数字化转型。
271 1
|
4月前
|
消息中间件 缓存 JavaScript
如何开发ERP(离散制造-MTO)系统中的生产管理板块(附架构图+流程图+代码参考)
本文详解离散制造MTO模式下的ERP生产管理模块,涵盖核心问题、系统架构、关键流程、开发技巧及数据库设计,助力企业打通计划与执行“最后一公里”,提升交付率、降低库存与浪费。
|
4月前
|
消息中间件 JavaScript 前端开发
如何开发ERP(离散制造-MTO)系统中的技术管理板块(附架构图+流程图+代码参考)
本文详解ERP(离散制造-MTO)系统中的技术管理板块,涵盖产品定义、BOM、工序、工艺文件及变更控制的结构化与系统化管理。内容包括技术管理的核心目标、总体架构、关键组件、业务流程、开发技巧与最佳实践,并提供完整的参考代码,助力企业将技术数据转化为可执行的生产指令,提升制造效率与质量。
|
4月前
|
消息中间件 JavaScript 关系型数据库
如何开发一套ERP(离散制造-MTO)系统(附架构图+流程图+代码参考)
本文介绍了面向离散制造-MTO(按订单生产)模式的ERP系统设计与实现方法。内容涵盖ERP系统定义、总体架构设计、主要功能模块解析、关键业务流程(订单到交付、BOM展开、MRP逻辑、排产等)、开发技巧(DDD、微服务、事件驱动)、参考代码示例、部署上线注意事项及实施效果评估。旨在帮助企业与开发团队构建高效、灵活、可扩展的ERP系统,提升订单交付能力与客户满意度。
|
5月前
|
资源调度 安全 调度
为什么制造企业的MES、ERP系统上不了一线
制造业数字化转型中,ERP和MES系统虽为管理层带来高效与规范,但在车间一线却常遇落地难题。系统复杂、培训困难、环境限制及工人习惯等因素,使这些系统难以真正发挥作用,甚至造成数据滞后、记录缺失等问题。在此背景下,轻量化工具如二维码逐渐兴起,以其低成本、易操作、灵活部署等优势,成为连接系统与一线的“补位”方案。未来,重系统与轻工具并存,或将成为制造业数字化更务实的发展路径。
|
6月前
|
人工智能 运维 安全
如何自己开发一套ERP系统?
本文探讨了企业自建ERP系统的可行性,分析了轻量、中型和重型ERP的区别,并指出自研ERP需明确业务需求、流程逻辑及投入成本。文章建议企业在决定自研前,应先梳理清楚管理逻辑,而非盲目追求技术方案。
|
6月前
|
存储 关系型数据库 BI
如何开发ERP系统中的财务管理板块(附架构图+流程图+代码参考)
本文深入解析ERP系统中财务管理模块的设计与实现,涵盖核心功能、业务流程、开发技巧及代码示例,助力企业打造高效、智能的财务管理系统。
|
6月前
|
SQL 存储 供应链
如何开发ERP系统中的库存管理板块(附架构图+流程图+代码参考)
本文介绍如何通过ERP系统实现企业库存管理的数字化与自动化,涵盖仓库管理、库位管理、出入库操作、库存调拨与盘点等功能设计,并提供开发技巧及代码参考,帮助企业提升库存管理效率,减少错误与资源浪费。
|
6月前
|
JavaScript
数字化转型过程中,制造型企业如何选择适合的ERP系统?
ERP系统是制造业数字化转型的核心工具,但选型需谨慎。本文从实战出发,总结制造企业如何选择真正适用的ERP系统,避免常见陷阱,助力企业实现高效管理与持续发展。
|
4月前
|
供应链 JavaScript BI
如何2小时搭建一套(离散制造-MTO)ERP系统?
针对离散制造MTO模式痛点,本文分享如何用零代码工具两小时内搭建极简ERP系统,实现订单、生产、物料与库存实时联动,提升交付准时率与管理透明度,降低出错与成本。

推荐镜像

更多