《EOS开发入门》PPT课件.ppt_第1页
《EOS开发入门》PPT课件.ppt_第2页
《EOS开发入门》PPT课件.ppt_第3页
《EOS开发入门》PPT课件.ppt_第4页
《EOS开发入门》PPT课件.ppt_第5页
已阅读5页,还剩103页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SOA从应用开始 全球领先的SOA应用平台,EOS6开发培训,谢 俐 2019/6/8,EOS开发,EOS产品介绍,1,2,普元SOA技术架构,3,EOS开发版的安装,5,目录,EOS产品特性,4,分层是应用发展到一定阶段的必然,稳定的架构平台,提升开发与集成 的效率,产品组成,什么叫平台,框架 用来支持具体的功能,如支持DB访问的Hibernate。 工具 用来支持开发人员使用框架,如Studio,测试工具,集成系统等 监管 用来对已经上线或者处于测试期的应用进行监控和管理,可以便于查找问题和优化,包括自动优化。,EOS产品特性,EOS产品介绍,EOS开发,普元SOA技术架构,1,2,3,EOS开发版的安装,5,目录,4,普元 SOA 技术架构,协同层 接入 & RichWeb 页面流,资源层, SDO 2.1& DAS,逻辑层, 构件容器 &短流程,服务层, SCA1.0,流程层, BPS,EOS开发,普元SOA技术架构,EOS产品介绍,EOS开发版的安装,EOS产品特性,1,2,3,5,目录,4,EOS产品特色,构件化 图形化的开发模式 一体化的开发运行环境 全方位的管理监控 先进的SOA技术架构与标准 (SCA/SDO) 企业级特性 (集群、性能等),EOS产品特性:构件化,构件生命周期管理 构件设计 构件开发 构件调试 构件测试 构件部署升级 构件文档生成 构件管理监控 构件库管理,EOS产品特性:图形化开发模式,构件包设计 数据模型设计 业务逻辑开发 服务装配 页面流开发 工作流开发 图形化调试,EOS产品特性:一体化的开发运行环境,横向一体化 需求 设计 开发 调试 测试 部署、升级 文档生成,纵向一体化 数据模型 逻辑构件 逻辑流 服务装配 页面开发 页面流 业务流程,EOS产品特性:全方位的管理监控-运行期监控,EOS产品特性:全方位的管理监控-开发期管理,维护文档生成 工作量统计报告 质量报告,EOS产品特性:先进的SOA架构与技术标准,EOS产品特性:企业级特性 - 集群管理,EOS产品特性:多层的复用体系,开源的应用框架 组织机构&权限 主菜单框架 业务字典、.,基础构件库 数据访问服务 日志、消息、缓存 任务调度、,基于AJAX的RIA控件 DataCell DataForm QueryForm ViewList,功能向导 控件向导 单表维护向导 组合对象维护向导 Lookup页面向导,EOS开发,普元SOA技术架构,EOS产品介绍,EOS产品特性,EOS开发版的安装,1,2,3,5,目录,4,EOS安装注意事项,安装文件所在目录不要有空格 数据库的配置及初始化 服务器的启动及8080端口冲突问题,一起体验一下吧!,EOS产品特性,普元SOA技术架构,EOS产品介绍,EOS开发版的安装,EOS开发,1,2,3,5,目录,4,EOS基本概念介绍,1,2,入门案例示例开发,数据流转原理剖析,3,EOS开发,EOS单表多表开发,5,6,EOS扩展内容介绍,EOS开发实战演练,4,EOS基本概念,构件包:构件应用中可部署可管理的最小单元 运算逻辑:用来封装一些最基础的运算方法 逻辑流:解决企业业务处理过程中计算的流程 页面流:管理浏览器的多个页面之间的跳转和数据共享 工作流:处理多人、多环节跨时间能够完成一个完整业务处理过程的流程 SDO:是一套SOA数据编程模型的规范,它规定了一系列的接口;主要目标是适合异构的数据源的数据,并使得用户对这些数据用统一的接口进行访问 数据上下文:EOS的各个流程引擎中运行时都是基于数据总线,运行时数据总线的存取方式统一采用Xpath方式进行寻址,数据上下文分类,请求上下文,流程上下文,数据上下文,逻辑流上下文,MUO上下文,工作流,逻辑流,页面流,会话上下文,页面流上下文,受控用户对象上下文简称为MUO(Managed User Object)上下文,EOS数据流转过程,EOS数据处理过程页面流,会话上下文数据区:当前用户会话期间任意页面流直接可以访问 页面流上下文数据区:当前实例下跨页面之间可访问 请求上下文数据区:只在某次页面请求到下个页面之间有效,EOS数据处理过程逻辑流,数据总线(Bizlogic Runtime Context),MUO上下文数据区:将会话上下文数据区中的部分数据构造成受控的用户数据对象,当前实例下用m:XPATH_EXPRESSION访问 逻辑流上下文数据区:当前实例下可访问,EOS数据处理过程工作流,有状态流程 是一个持久化的流程,流程运行时可以跨时间、多机器、跨应用 持久化的数据总线 流程上下文数据区: 保存的是工作流的流程相关数据,这个数据区是可序列化的,工作流流程引擎在某些场景会将这个数据区存储到数据库中。 颗粒度最大的企业业务流程,能够体现出企业的实际的业务处理的流程,1,2,EOS基本概念介绍,数据流转原理剖析,3,目录,EOS单表多表开发,5,6,EOS扩展内容介绍,EOS开发实战演练,4,入门案例示例开发,Hello World案例开发,场景介绍,关键知识点 页面流、逻辑流的使用 运算构件的调用 参数设置 数据上下文的生命周期,普元,一起体验一下吧!,Hello World案例开发,开发过程,思考&分享,学到了什么? 想了解什么?,1,2,EOS基本概念介绍,3,目录,EOS单表多表开发,5,6,EOS扩展内容介绍,EOS开发实战演练,4,数据流转原理剖析,入门案例示例开发,页面,页面流,逻辑流,运算逻辑,数据上下文,1,2,4,5,6,执行过程,数据流向,3,requestContext sessionContext flowContext,requestContext sessionContext flowContext,bizContext muoContext,bizContext muoContext,数据流转原理,数据处理过程,开发技巧一,创建项目:默认添加基础构件库,如需要报表和工作流,需另外添加。 页面名称:系统自动创建的页面可以重命名,注意选择“更新引用”;也可以自己创建的jsp页面。 页面标签:直接拖拽;输入“”显示提示;借助“属性”视图;标签空白处使用“Alt+/”。 自定义构件库:直接显示SDO对象对应的基础操作,或者是java对象在JDK1.5中的基本操作。 逻辑流:参数或返回值改变后,在调用处 “刷新”。 自动构建:保存即编译 ,在调试服务器启动的情况下,开发环境会立刻将正确的编译结果文件自动同步到服务器上。,开发技巧二,Alt+Enter:快速打开设置对话框或属性框。 Alt+s:图元的“显示名称”与“名称”之间进行切换。 c:可以进行连线,不用再从选用板上选择“连接线”。 F3:快速打开相关链接。 调试快捷键: F4:设置/取消断点 F5:单步跳入 F6:单步跳过 F7:单步返回 F8:运行结束,1,2,EOS基本概念介绍,3,目录,数据流转原理剖析,5,6,EOS扩展内容介绍,EOS开发实战演练,4,入门案例示例开发,EOS单表多表开发,EOS 单表查询开发,员工查询案例开发,场景介绍,关键知识点 数据集、数据实体的概念 业务字典、显示属性的用法 QueryForm、ViewList页面控件 CriteriaType、PageCond用法,员工查询案例开发,开发过程,一起体验一下吧!,员工查询案例开发,开发提示 页面流:开始查询页面查询操作结束 查询页面: 组合控件QueryForm设置查询条件 组合控件ViewList显示查询结果 查询操作: DatabaseExt.queryEntitiesByCriteriaEntityWithPage 程序入口:页面流,EOS Component Library (EOS构件库),基础构件库分类,1. 数据上下文及SDO数据操作类: 主要实现了对数据上下文数据的操作 2. 数据库操作类: 主要是用来对数据库的访问和更新操作 3. EOS基础构件类: 主要实现了与定时器、日志、业务字典、系统配置管理和国际化信息资源处理相关的操作 4. Java基础构件类: 主要是用来完成与字符串、加密、日期、文件相关的操作,基础构件库分类,基础构件分类,基础构件库展示,查询构件比较,1. queryEntitiesByCriteriaEntityWithPage : 根据查询条件实体分页查询,根据查询条件实体指定查询Entity的字段 2. queryEntitiesByCriteriaEntity : 根据查询条件实体查询所有记录,根据查询条件实体指定查询Entity的字段 3. queryEntitiesByTemplateWithPage : 根据SDO数据模板查询条件分页查询,会查询Entity的所有字段 4. queryEntitiesByTemplate : 根据SDO数据模板查询条件查询所有记录,会查询Entity的所有字段,EOS构件库特性,丰富的基础构件 EOS基础构件库 goCom开源的应用框架构件库 开放性、集成性好 支持第三方Jar包直接封装为构件,无需做任何代码修改 支持导入用户开发的业务构件库,复用度高 扩展性高 支持自定义运算构件,EOS 单表删除开发,员工删除案例开发,场景介绍,关键知识点 数组传递 循环删除 批量删除 事务、异常,员工删除案例开发,开发过程,分组练习一下吧!,员工删除案例开发,开发提示 页面流:开始查询页面删除操作结束 查询页面: 列表复选框的name属性 删除按钮的onclick事件 删除操作: 事务、循环图元 DatabaseUtil.deleteEntity(循环删除) DatabaseUtil.deleteEntityBatch(批量删除) 程序入口:页面流,EOS 单表修改开发,员工修改案例开发,场景介绍,关键知识点 取数组中的一条记录 DataForm页面控件,EOS 单表新增开发,员工新增案例开发,场景介绍,关键知识点 主键生成策略,EOS 开发演示,EOS开发过程场景一,EOS开发过程场景一,1、创建项目 2、构件包规划 3、数据建模 4、逻辑流规划 5、页面流规划 6、页面开发 7、逻辑流开发 8、页面流开发 9、部署调试 10、功能打包 11、生成文档 12、部署实施,EOS开发过程场景二,EOS开发过程场景二,1、模板配置 2、创建项目 3、构件包规划 4、数据建模 5、向导开发 6、页面开发 7、逻辑流开发 8、页面流开发 9、部署调试 10、功能打包 11、生成文档 12、部署实施,讨论&分享,昨天学习的感受?,开发总结开发技巧,数据实体 “转换大小写”和“导入关联关系” 显示属性中录入/显示,对应的是EOS提供一组基础的标签库 页面组合控件 QueryForm:设置查询条件 ViewList:显示查询结果 DataForm:新增/修改记录 反向生成向导 循环 循环块里的一个图元,需要直接将图元拖动到循环块里,而不能拖动整个循环块覆盖在图元上,开发总结参数传递,页面页面流 Action输出参数/视图输出参数(requestContext) 页面提交参数的名称(xpath)与flow级别变量的名称匹配(flowContext) 页面流逻辑流页面流 逻辑流空白处设置输入参数和返回值 页面流中设置的输入参数和返回值 页面流页面 页面显示的对象名称与页面流中的返回值名称一致 页面标签property+scope,开发总结form标签,页面预定义字段 表示当前显示的页面在运行时对应到页面流中的哪个图元上 表示需要传递页面流级别的变量 表示执行哪个action 自带_eosFlowKey,_eosFlowDataContext 只能执行当前显示页面的直接后继action 根据情况手动添加_eosFlowKey,_eosFlowDataContext 可以执行当前页面流中的任意action,单表维护向导,单表维护向导开发,1、选择向导,2、选择数据实体,3、查询queryform,4、显示viewlist,5、新增/修改dataform,6、生成代码,向导开发四句真言,先建数据模型 再设显示属性 向导功能来驱动 代码自然就完成,EOS 多表查询开发,关联关系单向N对1关联,N端实体中用于关联的属性可以是主键也可以是非主键,1端的关联字段必须是主键(可以是单主键也可以是复合主键)。 当在N端选择了用于关联的属性,那么这些属性在N端实体中是不存在的,且不可访问,会用1个1端实体来代替。当要访问N端这些属性的值的时候,需要操作1端实体的主键属性才可以。,单向N:1关联是支持延迟加载的。如果设置延迟加载为false,表示不支持延迟加载,那么会在查询N端实体的时候同时查询1端实体,查询时是用一句join sql查询;如果设置延迟加载为true,表示支持延迟加载,则先是查出所有的N端实体,然后根据N端的关联属性去查询1端实体。,Lookup对话框开发,场景介绍,关键知识点 单向N对1关联关系 Lookup对话框向导 w:lookup标签,练习,场景介绍,动手试试吧!,EOS 多表新增开发,关联关系单向1对N关联,1端的关联字段必须是主键(可以是单主键也可以是复合主键)。N端必须要选择相同个数的列和1端主键匹配。 单向1:N的关联,可以通过1端的实体对象访问到N端的实体对象,但是无法通过N端的实体对象访问到1端的实体对象。,单向1:N默认支持延迟加载。如果延迟加载设为false,表示不支持延迟加载,那么会先用一句sql查出1端实体,然后根据1端实体的主键查询出关联的N端实体,这样就会产生1+N条的sql查询,使得查询性能缓慢。,多表新增开发,场景介绍,关键知识点 单向1对N关联关系 DataForm与DataCell同时提交 级联新增,思考&练习,级联修改? 级联删除?,还能再快些吗?,主从表维护向导开发,1、选择向导,2、选择数据实体,3、查询queryform,4、显示viewlist,5、主表dataform;从表datacell,6、生成代码,开发技巧,数据建模 EOS Studio内置了SQL编辑器,可以直接执行数据库脚本,创建好数据库表。 更改数据实体的关联关系,不会影响到数据库表 页面组合控件 DataCell:表格编辑控件,以列表的方式展示数据,同时可以在表格上对数据进行增删改操作 DataForm和DataCell同时提交,学会了吗?,Lookup的实现原理 Datacell的使用方法 多表实现方法,1,2,EOS基本概念介绍,3,目录,数据流转原理剖析,5,6,EOS扩展内容介绍,EOS单表多表开发,4,入门案例示例开发,EOS开发实战演练,开发竞赛,数据模型,Oainfo:发文表 Oasign:会签记录表 Emp:会签人表 发文时要选择1个或多个会签人,保存发文记录的同时将发文表ID和会签人ID保存在会签记录表中。,开发竞赛,场景介绍,功能点 查询发文记录(模糊、分页) 查询会签人信息 新增、删除发文记录和会签记录,神秘大奖等你拿!,时间:120分钟 评分标准:满分100分 分页查询出发文记录 10分 根据发文标题模糊查询 10分 新增发文信息时显示所有会签人信息 20分 同时保存发文信息和会签记录 40分 同时删除发文信息和会签记录 10分 代码结构较优、开发规范 10分 加分标准: 提前完成所列功能 10分 修改发文信息时能在会签人列表中显示已选择的记录 30分 同时更新发文信息和会签记录 20分 扣分标准: 每组有一个免费求助机会,超过一个-5分,开发总结,查询发文信息 单表维护功能向导 新增发文信息 新增前:执行查询会签人信息操作 queryEntitiesByTemplate 新增页面: DataForm+ViewList,设置在一个中 设置页面输出参数时,所选的会签人信息设置成会签人对象数组类型 保存时: 发文信息单独保存; 循环会签人对象数组:创建会签记录对象,将发文信息主键、每次循环得到的会签人ID设置到会签记录对象中,添加到会签记录对象数组中; 批量保存会签记录对象数组。 删除发文信息 级联删除 deleteEntityCascade,1,2,EOS基本概念介绍,3,目录,数据流转原理剖析,5,6,EOS开发实战演练,EOS单表多表开发,4,入门案例示例开发,EOS扩展内容介绍,目录结构,base: 模板目录(服务器、组创建的模板、应用创建、部署用模板目录) config:服务器的配置目录 config.xml:当前server的运行配置 log4j_eos.xml:服务器级日志配置 deploy.xml:当前Server运行的应用和构件包配置信息。不允许手工修改。 domain:域的仓库目录 logs:服务器级日志目录 scripts:脚本目录 tmp:临时目录 working:工作目录,Working目录,working目录是应用真正的加载目录 cache:cache的工作目录 config:配置文件和应用级资源文件目录 lob_temp: CLOB和BLOB字段的临时目录 logs:应用级日志目录 temp:页面流、逻辑流的等临时编译的java文件目录 upload:上传文件的目录 work:构件包的工作目录 system:系统构件包目录 user:用户构件包目录 META-INF:构件包配置和资源文件目录,EOS Governor介绍,访问地址: http:/localhost:8080/eos-governor EOS Governor功能 数据源切换和配置 多应用的配置 构件包部署 构件包补丁部署 让我们去探索一下,ABFrame系统概述,ABFrameApplications Basic Framework (EOS应用基础框架) 对于任何一个应用系统来说,组织机构和权限管理都是基础且不可缺少的部分。使用EOS6开发项目同样需要一个组织机构和权限管理支撑。 ABFrame 应运而生 以更高的起点开发应用系统 提高应用开发速度 增强系统的稳定性 展示EOS构件思想 构件规划 开发规范 展示EOS技术点 使EOS技术点以可运行的形式表达 开发人员更便捷地学习EOS技术点,ABFrame模型介绍,组织机构 权限管理 业务字典 通用功能,机构管理 岗位管理 员工管理 业务机构 职务管理 工作组,1. 组织机构,1.1 机构管理,机构、工作组和人员 机构和岗位/职位 组织机构和权限集(角色) 职务和岗位/职位,允许定义多套机构,如总公司A、总公司B,支持数据导出,1.2 岗位管理,机构和岗位/职位 岗位/职位和人员 岗位/职位和职务,岗位层级关系:岗

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论