1、什么是EMP

EMP平台是一个基于J2EE体系的、WEB应用的、基础框架平台;

表现逻辑框架(MVCFrameWork)与业务逻辑框架(EMPBizLogic)分离;

组件化、配置化设计技术;

可视化开发工具EMP IDE;

提供了丰富的基础组件。

2、使用MVC的目的是将模型和视图实现松耦合,从而使同一个程序和数据表现为不同的展现形式

模型(model)模型表示业务数据和业务规则。在MVC中,模型拥有最多的处理任务。

视图(view)视图是用户看到并与之交互的界面

控制器(controller)控制器接收用户的输入并调用模型和视图去完成互用的需求。控制器本身不输出任何东西和做任何处理。他只是接收请求并决定调用哪个模型构建去处理请求,然后确定用哪个视图来显示模型处理返回的数据

3、EMP是一个包含开发、运行、监控管理的满足SOA体系架构的轻量级J2EE应用平台

是一个基于J2EE的多渠道整合平台

开放式的用户可扩展的应用框架

实现构件化的业务处理逻辑组装,基于基础组件的组装,完成业务构件的定义、提供了大量的基础组件及构件

实现构件化的前端架构、AJAX技术,支持未来互联网技术、提供前端框架,实现丰富的用户交互

提供基于JMX标准的监控管理能力

提供基于模型维护的可是开发工具IDE

4、 EMP适用于企业级电子商务应用的基础平台,该平台的特点是易于构建和基于模型

5、控制器:

连接输入、输出页面与业务处理逻辑的纽带

根据请求决定:直接返回输入页面还是将输入页面更新到业务处理逻辑的数据模型然后执行逻辑处理流程,根据执行结果,返回相应的输出页面

提供实现接口,让用户客户化实现自己的Controller

系统提供的Controller:一般的Controller,具有输入、输出页面

wizzard(向导)式Controller,允许多个页面之间来回切换,实现某个业务逻辑的处理

多次请求式的controller,如某个业务逻辑在完成业务逻辑处理后,返回的页面中允许用户点击查看更多的信息,或者还有图表的请求

6、MVC---数据校验与转换

(1)服务器端数据的校验与转换:

校验,提供相应的数据类型定义以及数据校验接口

输入数据的转换:如带分隔符的全额输入域到后台需要的无分隔符及小数点的数据

输出数据的转换,实现后台数据到显示数据的转换

在Controller更新数据模型时实施校验与转换

(2)客户端数据输入的校验与转换

提供基础的javascript代码和标准接口,实现输入数据的校验包括:必输、格式和范围校验

提供输入数据的转换功能

(3)所有这些都是集中管理,使用中只需要设定一个参数:数据类型即可

7、EMP业务逻辑处理容器---行业应用上的特性

(1)金融行业应用大多有连接性需求

与典型的信息管理类不同,金融应用不但要管理数据库,还要与外围系统完成数据交换

有报文处理、通信协议处理的需求

(2)业务处理的复杂度很高:

相对于传统的信息管理类的处理,流程复杂很多

硬编码方式的实现弊病:质量低,难维护

(3)业务处理流程具有相似性:

以单纯的接口定义+服务实现的方式来完成流程处理并不完全合适;重复性代码、流程的随需变动带来的硬代码的改造

采用流程的抽象+配置化产生流程实例的方式更能满足真正的业务需要,流程的改变只是意味着配置的改变

8、EMP访问控制模型:

(1)框架在访问入口,包括渠道/表现逻辑访问入口,和业务逻辑访问入口提供访问控制模块插件的插入

框架在这些入口处会首先调用插件检查访问权限,只有通过检查的才允许访问

(2)平台提供的访问控制插件

基于用户角色的访问控制插件

基于访问处理时间的并发访问控制插件,允许用户根据业务分类进行分组控制,也可以单独控制

9、访问控制器

(1)实现的接口:com.ecc.emp.accesscontrol.AccessController

(2)方法介绍:

checkAccess--入口方法,检查请求是否合法,以及该请求是否符合该控制器的管辖范围

beginAccess--控制对象的开始控制方法,如果checkAccess返回结果不为空,则进入

endAccess--请求对象处理完毕

10、EMP数据库能力---声明式事务处理

(1)在业务逻辑的处理过程中往往涉及多次的数据库访问,而这些数据库访问要求在一个事务内完成,甚至在一个业务处理逻辑中还有嵌套的事务处理需求,基于这种需求  EMP提供了独立于应用逻辑的,独立事务管理模块    通过EMP事务管理模块,提供声明式事务处理,同时应用也可干预事务的处理

(2)EMP提供两种事物处理能力

基于数据源的事务管理模块,实现基于单一数据源的事务统一管理

基于JTA的多数据源的事务管理模块,实现多个数据源情况下的事务处理(需要JTA驱动程序支持)

(3)EMP中每一个数据库访问相关的操作均可以声明事务

11、EMP数据库能力----数据库服务组件

(1)与EMP事务处理结合的数据库访问服务

(2)使用应用服务器数据库连接池

(3)也可以使用EMP平台自行提供的数据库连接池管理

(4)数据库访问(数据处理)

数据库表与平台数据的映射;数据库存储过程访问;数据库SQL访问

(5)数据访问IDE向导功能

12、EMP数据库能力----访问效率优化

(1)运行时,全部生成预处理SQL语句对象

(2)提供对所有查询的自动分页能力

(3)提供动态查询SQL支持

提供模板工具定制动态查询SQL;根据运行时数据信息,动态生成查询条件

转载于:https://www.cnblogs.com/zuzZ/p/9552782.html

EMP平台简介(转载)相关推荐

  1. iMAG移动应用快速开发平台简介

    跨平台的移动应用 移动应用产品往往要考虑多个平台的支持,至少需要兼容主流的iOS和Android平台.而多平台的支持往往因为不同平台技术的迥异需要建立不同的技术团队,开发周期长,成本高,后期维护升级也 ...

  2. 第三代测序平台简介-单分子实时测序

    第三代测序平台简介-单分子实时测序  (2017-09-16 15:35:13) ​转载▼ 标签: 测序仪 pacbiorsii 测序平台 分类: 三代测序 PacBio RS II 测序平台介绍 P ...

  3. ITTC数据挖掘平台介绍(综述)——平台简介

    数据挖掘方兴未艾,大量新事物层出不穷.本系列将介绍我们自主设计的数据挖掘软件平台.与大家共同分享对知识,微博,人际等复杂网络的分析,以及对自然语言处理的见解. 一.我们需要怎样的数据挖掘系统 一直以来 ...

  4. Sybase数据库简介 (转载)

    一.Sybase数据库简介 (转载) 1.版本 1984年,Mark B. Hiffman和Robert Epstern创建了Sybase公司,并在1987年推出了Sybase数据库产品.SYBASE ...

  5. 企业知识管理专家:KMaster知识管理平台简介

    KMaster知识管理平台简介 什么是知识管理? 知识管理(Knowledge Management,简称KM)是协助企业,围绕各种来源的知识内容,利用信息技术,实现知识的生产.分享.应用以及创新,并 ...

  6. ML之Anaconda:关于Anaconda集成平台简介、安装、使用方法的详细攻略

    ML之Anaconda:关于Anaconda集成平台简介.安装.使用方法的详细攻略 目录 Anaconda简介 1.管理 Python 所用的包 2.管理 Python 不同版本的环境

  7. ONENET平台简介及简单的接入方法

    ONENET平台简介及简单的接入方法 OneNET是中国移动物联网有限公司响应"大众创新.万众创业"以及基于开放共赢的理念,面向公共服务自主研发的开放云平台,为各种跨平台物联网应用 ...

  8. FPGA 之 SOPC 系列(二)SOPC开发流程及开发平台简介

    今天给大侠带来今天带来FPGA 之 SOPC 系列第二篇,SOPC开发流程及开发平台简介相关内容,希望对各位大侠的学习有参考价值,话不多说,上货. 本篇首先详细介绍了SOPC开发的基本流程,然后通过实 ...

  9. 车辆gps监控系统中心服务器,卫星gps车辆监控平台简介

    原标题:卫星gps车辆监控平台简介 卫星GPS车辆监控综合管理系统是借助车辆上的GPS定位器传输数据的管理平台,大体上卫星GPS车辆监控管理系统模块包括总控中心.监控席.数据中心.系统主管理中心和短信 ...

最新文章

  1. 12.QT线程的两种启动方式
  2. 【PAT乙级】1032 挖掘机技术哪家强 (20 分)
  3. mysql 更新 字段 递增_MySQL使用递增变量更新字段
  4. Android之自定义checkbox样式
  5. 云下IDC和云上VPC如何高速稳定互联?——云专线接入方案
  6. (0)PCIE接口目录(学无止境)
  7. mybatis 注解忽略属性
  8. 学前端可以做哪些功能?
  9. LeetCode(404)——左叶子之和(JavaScript)
  10. linux下三三维建模软件,SolidWorks是基于()原创的三维实体建模软件。A.UNIXB.WindowsC.LinuxD.Dos...
  11. Python大佬分析了15万歌词,告诉你民谣歌手们到底在唱什么
  12. 课后实践4:以支付宝为例,使用商业画布分析一款产品
  13. Nginx工作原理(Master+Worker)
  14. 积少成多Flash(4) - ActionScript 3.0 实例之Hello World, 时钟, 计时器
  15. 锐捷网络 ipv6 默认路由配置
  16. 作品交流:调制解调-勘误情况
  17. HTML CSS个人网页设计与实现——人物介绍丁真(学生个人网站作业设计)
  18. 输出日期为2021年的第几天(switch...case)
  19. 全靠我啃烂了这份2021最新面试题!吊打面试官
  20. python判断一个字符串是不是ip地址

热门文章

  1. 数据库 用Python把数据写入到MySQL数据库/如何使用Python将数据写入到阿里云的RDS-MYSQL
  2. 有幸被推荐到首批Oracle YEP计划
  3. 《缠中说禅108课》52:炒股票就是真正的学佛
  4. 非正式的沟通往往比正式的沟通更有效,更重要
  5. Linux 设置简单密码
  6. Node.js:npm install时出错 check python checking for Python executable “python2“ in the PATH
  7. dblp 数据库(mark)
  8. 1、python冒泡排序和快排
  9. ProGuard技术详解
  10. Object oriented Design