资源描述
SG-UAP培训,培训提纲,平台介绍-背景,应用系统统一开发平台(SG-UAP,Unified Applicatoin Platform。后续出现的UAP及SG-UAP均为简称),国家电网公司新一代应用开发、运行、治理平台,提供一套技术统一、架构柔性、性能高效、安全可靠的企业级信息系统基础框架和公共套件集,支撑业务系统的设计、开发、测试、发布、运行的全过程。,平台介绍-平台组成,平台基础设施,平台介绍-名词解释,SG-UAP SERVER 应用提供SG-UAP平台的模块,整个项目组共用一个,由项目管理人员统一维护,开发人员只需要知道SG-UAP平台服务端的地址。(简称“服务端”) SG-UAP IDE SG-UAP集成开发工具 模块 具有OSGi规范(Open Service Gateway Initiative ,开放服务网关规范) 特定描述的Java程序包,是OSGi规范定义的模块化实体单元。SG-UAP平台的动态模块框架对标准的OSGi模块进行扩展形成了动态模块,以上两者统称为模块。,平台介绍-名词解释,UAP项目 依赖于SG-UAP平台服务端的标准的空的Web应用 Weblet web应用的最小逻辑单元,它将页面文件、脚本文件和资源文件按照一定的目录结构管理。 PO对象 Persistant Object 持久对象,是与数据库中表相映射的java对象。,平台介绍-平台技术路线,服务端开发技术 选择Java路线,JDK/JRE 1.5,Servlet 2.4/Jsp 2.0(Java EE 1.4标准) 组件容器 spring3.1.1 数据持久化与对象映射技术 平台持久化层包括两种:Hibernate oo(3.2.6)和基于SessionFactory的SQL执行,平台介绍-平台技术路线,数据序列化格式 JSON(Javascript Object Notation) 是一种轻量级的数据交换格式,易于人机阅读和编写,同时也易于机器解析和生成。 模块化技术 平台微内核主要目标是提供业务系统的模块化(开发、部署)和动态化能力。采用OSGi R4规范的参考实现Equinox3.5为基础实现。采用Servlet桥模式,将OSGi框架嵌入到应用容器中运行 MX展现框架 平台的MX展现框架是基于开源的Jquery封装的JS框架,为交互式Web应用提供丰富可扩展的界面展现组件,平台介绍-平台技术路线,缓存 平台采用扩展稳定可靠的开源缓存技术Ehcache的方式,实现了一套功能强大的进程内缓存。 分布式缓存基于开源NoSql数据库MongoDB进行扩展实现,具有海量数据存储能力,比较适合云环境下的缓存应用。 数据库 数据库采用Oracle 10g、IBM DB2、Sql Server、MySql,支持国产数据库达梦、金仓等。 日志 组件 Log4j,平台介绍-平台技术路线,基于浏览器的即席报表 即席报表提供了完全可在网页中编辑报表的全功能报表设计器,采用主流的条带式报表模型,真正无编码形式设计报表,提供了易用、高效的报表设计方案和完善的报表权限管理功能。 稳定易扩展的任务调度 任务调度采用成熟开源项目Quartz(3.5)为基础,扩展实现可视化任务配置与监控功能,为应用系统提供了稳定、易用的自动化任务执行支撑。,平台介绍-集成开发工具,集成开发工具以Eclipse为基础,以插件的方式进行功能扩展。 基础设施及业务套件以SDK形式为业务系统提供工具支撑。 采用标准的Eclipse插件升级模式进行升级。 内置Tomcat6.X应用服务器及Oracle、达梦等数据库驱动程序,方便用户开发使用。 制定一套基于统一开发平台的项目开发方法论及配套的项目管理工具。 扩展了模型设计、以模型驱动的方式进行场景代码生成等方面的能力,平台介绍-模型驱动,模型驱动(开发)是一种以模型作为主要工件的软件开发方法,模型在建模工具的支持下,被转换成代码或者可运行配置。,提高产能:减少手工编码量、开发快、提高质量。 可维护性:模型与技术分离,技术架构的改变意味着只是模型的一种新的转换,模型本身不变,同一套模型可以适用于不同的技术平台,如:JavaEE、.NET,以及移动应用平台。 一致性:手工编码和架构决策容易出错,MDD可以确保应用系统的各部分代码结构和技术架构是一致的。 可重用性:模型、转换和技术架构都是可以重用的,由于架构和技术问题已经被解决,所以开发新功能的风险被降低。,优势,两种主流模型驱动开发模式,平台介绍-核心框架,平台展现框架,Web服务器,业务逻辑组件,持久化,DB,RESTful Endpoint,WebService Endpoint,BlazeDS Endpoint,RESTful Client,BlazeDS Client,平台公共服务集群,业务展现Weblet,平台服务Facade,第三方系统,平台标准逻辑组件,展现层,服务交互层,业务逻辑层,持久层,浏览器,平台运行时逻辑上可以分成展现层、服务交互层、业务逻辑层、持久层; 展现层主要包括业务页面、平台展现框架 服务交互层包括运行浏览器中的通信客户端和运行于服务端的服务接入点,平台内部服务调用主要支持RESTful、BlazeDS,平台为系统间集成提供Web Service支持; 业务应用系统的业务逻辑组件以及平台提供的标准逻辑组件、公共服务代理构成业务逻辑层 持久层提供数据持久化、数据访问能力,平台介绍-核心框架,核心框架,平台介绍-核心框架,全新的用户界面体验,快速开发,方便移植,经典主题样式,Web桌面用户体验,一致的桌面和网页外观,面向对象的设计开发,支持最新的网页标准,大屏、手机,同效展示,支持主流的浏览器,模块化开发,即插即用,交互性增强,支持拖拽,平台介绍-即席报表,统一开发平台基础设施,即席报表设计器,报表展示客户端,报表服务接口,报表引擎,报表输出,报表缓存,报表组件库,报表管理,公式引擎,报表服务,集成开发工具,Web浏览器,BlazeDS,Restful,即席报表套件为业务系统中的报表应用提供设计和运行支持。 即席报表设计器采用Flex开发实现,完成设计各种报表功能,设计器可以通过浏览器和集成工具两种方式加载使用。 报表服务包含报表引擎、报表输出、报表缓存、组件库、报表管理、公式引擎等功能组件,完成数据运算、报表页面解析、报表管理、运行状态监控等功能。 报表客户端分为Web客户端和Flash客户端,可根据不同应用场景进行灵活选择。,平台介绍-即席报表,平台介绍-即席报表,平台介绍-任务调度,任务调度 服务端 (Web容器),建模客户端 (浏览器),任务设计器,业务系统,其他公共套件服务,任务调度套件,客户端,任务监控器,任务模型库,执行任务,任务逻辑,建模服务,监视服务,控制服务,调度引擎 (Quartz),执行引擎,任务 模型,调用任务逻辑,建模,RESTful/HTTP,以成熟开源项目Quartz为基础,扩展开发任务监控和任务建模工具。平台在Quartz任务模型基础上扩展定义平台任务模型。 任务监控以Web方式实现控制界面、分析管理图表等。 任务调度提供开放式的任务定义、调度、规则配置等功能,通过Quartz Scheduler提供的接口控制任务对象的动态加载、配置和控制。 第一阶段实现任务调度功能,重点集成改造Quartz实现动态增删、配置、监控任务。第二阶段通过规则引擎实现对任务步骤的编排。 任务调度因采用全新的调度引擎和任务组件执行方式,需要重新设计开发。,平台介绍-任务调度,建模组件,引擎,控制组件,执行组件,监视组件,以成熟稳定的开源项目Quartz为基础提升运行可靠性,具有集群能力、任务恢复能力保证系统高可用性 实现任务调度引擎与执行组件的物理分离,提升运行稳定性 提供可视化任务定义和监控,集中管控跨业务应用的各种执行任务,提升配置和管理的易用性。 提供界面与接口两种访问控制调度引擎的方式,在统一的标准下为用户保留高自由度的扩展空间,平台介绍-数据缓存,平台数据缓存服务提供统一的缓存访问接口API,接口支持以RESTful/JSON方式访问。 数据缓存提供基于Web的配置、管理、监控界面 数据缓存套件服务于平台内其他所有模块,数据访问层包含数据缓存服务的API,平台介绍-数据缓存,平台数据缓存组件定义一套缓存数据加载及管理机制,首次访问数据时应用根据定义的数据获取方式从数据源中载入数据至缓存中并返回至客户端,之后的每次访问均从缓存中获取数据而不必从数据源中加载数据。,平台介绍-数据缓存,平台介绍-BPM,流程引擎,流程管理控制台 Workspace,流程客户端,负责流程定义解析、流程实例运行。调用各种外部的业务操作或者Web服务等业务资源,是BPM产品的核心组件,进行流程设计建模与流程定制调整、提供对业务流程和业务资源的管理,对流程实例进行监控和查询,配置流程引擎等功能,进行流程的模拟测试,验证流程设计的正确性和可行性;提供待办任务和已办任务的查询功能,平台介绍-统一权限,用户,岗位,基准组织单元,业务组织体系,业务组织单元,业务组织单元性质,角色分组,业务角色,业务组织角色,数据类型,数据集,功能,权限对象,业务域,组织体系,业务系统功能体系,基准组织与用户,角色体系,隶属关系,关联关系,业务应用系统,自嵌套关系,平台介绍-统一权限,01 基准组织体系管理,01.02 基准组织单元维护,01.03 岗位维护,01.01 用户维护,02业务组织体系管理,02.01 业务组织体系分类设置,02.02 业务组织维度设置,02.03 业务组织单元性质设置,02.04 业务组织单元扩展属性设置,02.05 业务组织单元维护,03 业务角色管理,03.02 业务角色设置,03.03 业务组织角色维护,03.01 业务角色分组设置,04 业务系统功能管理,04.02 菜单功能定义,04.03 物理系统维护,04.01 业务系统注册,07 展现管理,07.01 自助服务,07.02 展现管理,05 权限管理,05.01 业务角色授权,05.02 业务组织角色授权,05.03 功能授权情况查询,05.04 用户授权情况查询,05.05 数据权限,05.06 授权委托,05.07 权限委托,06 日志管理,06.01 应用日志维护,06.02 用户登录日志分析,06.03 模块使用次数统计,06.04 模块使用情况分析,06.05 在线用户查看,06.06 人资同步数据日志,06.07 到业务应用同步日志,权限平台功能范围包括7大模块、26项二级功能、166项末级功能、5类服务接口,05.05 数据权限,05.05 数据权限,06.05 在线用户查看,06.05 在线用户查看,08 服务接口,08.01 统一认证接口,08.02 组织信息接口,08.04 功能权限接口,08.03 角色信息接口,08.05 信息展现接口,平台介绍-系统治理工具,平台介绍-系统治理工具,提供应用配置、部署、控制和监视功能。 提供对操作系统CPU、内存、磁盘等信息监视功能。 提供对应用服务器监视功能。 提供日志的集中存储和查询功能。,系统治理工具可对平台及部署在平台上的应用系统进行运行时的状态监视,当出现故障时提供告警(V2.0),分析故障原因,并依据配置规则自动或手动的对故障点进行恢复。,培训提纲,UAP项目介绍,UAP项目介绍,系统集成,系统部署,系统更新,传统模式下存在的问题,UAP项目介绍,系统更新,系统集成,系统部署,设计,开发,需求,模块化带来的好处,UAP项目介绍-微内核,平台微内核由模块框架组成,是平台可运行的最小单元。 微内核继承SoTower平台的思想和技术。采用Servlet桥模式,将OSGi框架嵌入到应用容器中运行。 应用整体上是一个标准的Web应用,可以运行在任何Java EE 1.4应用服务器中。应用内部将平台以及业务的所有功能拆分到具体的模块中,模块运行在OSGi框架中。,UAP项目介绍-核心框架,服务端,客户端,控制层主要是与前端进行交互。 在控制层中定义与前端约定的请求URL地址、参数和请求方法,映射到具体控制类和方法中。 接收前端请求,将请求数据拦截通过注解将数据翻译为后台理解的信息,执行相应操作后将返回值翻译为前端理解信息返回给前端显示。,控制层Controller,平台的逻辑层主要是编写逻辑构件 。 一个逻辑构件是由接口,实现类和配置文件组成。 逻辑构件在控制层中调用,将逻辑构件注入到逻辑层。,逻辑层 Bizc,平台的持久层提供统一的接口IHibernateDao。 接口中封装一系列的持久化方法。 逻辑层中调用持久层的方法完成对业务的逻辑操作。,持久层,UAP项目介绍-核心框架,服务端,客户端,UAP项目介绍-核心框架,服务端,客户端,Weblet运行在客户端,是包含展现逻辑、多个用户界面、可独立执行的RIA应用程序或运行时库。 Weblet小程序是web应用的最小逻辑单元,它将页面文件、脚本文件和资源文件按照一定的目录结构管理。 可视化设计器是为基于MX框架的二次开发人员提供的集成开发工具,方便开发人员快速构建一个web应用,UAP项目介绍-核心框架,服务端,客户端,JavaScript 语言扩展。,引用,$import(“module.package.className”), $import(“weblet.views.viewName”), $include(“$theme/listEditor.css“);,类,命名空间,事件,new mw.controls.dataGrid(),Me.onload = null; Me.trigger(“load”,callback)。,$ns(“module.package”);,继承,$extend(“module.package.superClassName”);,UAP项目介绍-核心框架,服务端,客户端,JavaScript 运行时扩展,UAP项目介绍-核心框架,服务端,客户端,MX 基础类扩展,UAP项目介绍-核心框架,服务端,客户端,MX 国际化,国际化文件:mxresourceslocalesmessages.js 使用方法:mx.msg(key,p_args),默认为“zh-CN”,UAP项目介绍-核心框架,服务端,客户端,MX 样式主题,Google主题(默认) ,Window 7主题 ,UAP项目介绍-核心框架,服务端,客户端,MX 组件,REST服务客户端,数据实体组件,基础组件 MXObject、MXEvent,数据展现组件 Tree、Grid、Form,布局组件,窗口组件 Window、Dialog,Weblet 注册、加载、运行,编辑器组件,UAP项目介绍-核心框架,服务端,客户端,Weblet 小程序,ViewPort,WebletContainer,Window,View,ViewController,WindowManager,UAP项目介绍-核心框架,服务端,客户端,IDE 脚本提示、MXFramework 框架依赖、IDE场景等向导。,IDE场景等向导,Weblet向导 MX 类向导 典型场景向导,IDE 脚本提示,MXFramework 框架依赖,绑定编辑器 添加脚本依赖,模块依赖,UAP项目介绍-核心框架,服务端,客户端,Javascript 调试 (F12),debugger; IE 6 以上 Chrome Firefox 4 以上,Fiddler;(Http Debugging ) VisualStudio Firebug Dev HTTP Client,调试环境,调试工具,培训提纲,两级技术服务体系介绍,两级技术服务体系介绍,谢谢!,49,Q & A,
展开阅读全文