EMP开发后台业务逻辑情况总结_第1页
EMP开发后台业务逻辑情况总结_第2页
EMP开发后台业务逻辑情况总结_第3页
EMP开发后台业务逻辑情况总结_第4页
EMP开发后台业务逻辑情况总结_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

-*建立业务逻辑的基本流程概述:1、添加数据字典:通过数据库导入或者加入自定义传输数据模型到整个工程的数据字典中;精品文档放心下载使用IDE进行应用开发时,需要遵循数据字典,每个业务逻辑的输入输出数据都是从数据字典中选取出来的,保证了整个开发工程的数据、变量名用词统一。因此在进行开发之前,需要预先对数据字典进行设计。在业务逻辑开发过程中,也可以随时为数据字典添加需要的元素。数据字典定义保存为XML文件形式(designFiles/commons/dataDict.xml)。感谢阅读2、添加服务定义:定义公共服务,如JDBCDriverDataSource、SQLDefine、TableDefine等服务。(定义的服务需要在节点定义中引用到公共节点或应用节点才可以起作用。)谢谢阅读3、添加公共节点所使用的服务和应用节点所使用的数据:需要引用步骤2中的服务定义和需要引用步骤1中的数据字典定义,以便在整个工程的业务逻辑中使用;谢谢阅读4、编写业务逻辑构件:加入该逻辑业务构件的所需数据定义;通过Java类导入或者IDE提供的业务组件编写业务流程;谢谢阅读建立业务逻辑的步骤:1、添加数据字典:EMPExplorer中,右键点击工程名称,点击【项目扩展定义】打开e-ChannelsEMP项目设定编辑器,如下图:精品文档放心下载-*方法一:自定义数据字典。点击编辑器中的数据字典定义,通过【创建】添加自定义的传输数据模型:数据ID需要唯一,数据类别分为dataElement和dataCollection,其中,dataCollecion为dataElement的集合,建立对应的dataElement感谢阅读dataCollection之后可以右键点击dataCollection,选择【添加。。】下的数据引用选项,添加对应的dataElement到集合中,形成数据集,这样便于使用。如下图:谢谢阅读-*-*方法二:使用数据库中的对象添加数据字典。EMPTableView视图中点击【project图标】选择工程名称,点击【connect】,选中所要加入数据字典的对象名,拖拽到EMPExplorer视图中的数据库表文件夹中,点击【ok】确认添加新的数据表模型。之后,双击欲添加的表名,在打开的编辑器中点击自动注入数据字典即可(注意:此时应该关闭“e-ChannelsEMP项目设定编辑器”)。精品文档放心下载-*2、添加服务定义:EMPExplorer中,右键点击业务逻辑下的第一个文件夹,点击【编辑】,可以打开“业务逻辑分组设定编辑器”,点击【服务定义】,如下图:感谢阅读-*填写服务ID(注意要唯一)并选择服务类型,然后点击【创建向导】,如类型是JDBCDriverDataSource时,如下图填写对应内容,点击【连接】,最后点击【Finish】精品文档放心下载-*如为SQLDefine,可以在填写服务ID并选择服务类型后,点击【创建】,填感谢阅读SQL语句,如有input条件用“?”表示,选择iColl名称,为数据字典定义的集合,选择操作类型;在右边添加input和output(现今版本一定要加入),然后为输入输出添加参数,其中序号为第几个参数,数据域为参数的数据字典名称(注意和前面填写的iColl名称对应),并选择参数的数据类型,最后点击【确定】即可,如下图:感谢阅读-*-*3、添加公共节点所使用的服务和应用节点所使用的数据:感谢阅读在“业务逻辑分组设定编辑器”中,点击【节点定义】,再点击【公共节点】,最后在“公共节点服务”中点击【添加】,加入要使用的服务,点击【确定】即可。如下图:感谢阅读-*在“业务逻辑分组设定编辑器”中,点击【节点定义】,再点击【应用节点】,最后在“数据引用”中点击【添加】,加入要使用的数据定义,点击【确定】即可。如下图:谢谢阅读-*4、编写业务逻辑构件:在在EMPExplorer中,右键点击业务逻辑构件所要放的包名,选择【新建】谢谢阅读-*中的【新增业务逻辑构件】,填写业务逻辑构件ID,之后点击【Finish】。如下图:谢谢阅读-*点击数据定义,之后点击【添加】,选择本逻辑构件中需要使用的数据定义,点击【确定】即可。如下图:精品文档放心下载-*点击【逻辑处理流程】,点击【基本信息】,填写罗ID和名称,点击【添加】,即可在【逻辑流程】中编写处理流程。如下图:谢谢阅读-*-*使用组件编写处理流程可分为两种方式:方式一:使用JAVA程序编写组件在工程的src目录下的com.sqws.sihitech.service包中建java文件(注意需要继承com.ecc.emp.flow.EMPAction),Java基础代码如下:谢谢阅读packagecom.sqws.sihitech.service;精品文档放心下载importjava.sql.Connection;感谢阅读importjava.sql.PreparedStatement;谢谢阅读importjava.sql.ResultSet;精品文档放心下载importjavax.sql.DataSource;谢谢阅读importcom.ecc.emp.core.Context;谢谢阅读importcom.ecc.emp.core.EMPException;精品文档放心下载importcom.ecc.emp.data.IndexedCollection;精品文档放心下载importcom.ecc.emp.data.KeyedCollection;精品文档放心下载importcom.ecc.emp.flow.EMPAction;感谢阅读importcom.ecc.emp.jdbc.ConnectionManager;精品文档放心下载importcom.ecc.emp.jdbc.EMPJDBCException;精品文档放心下载importcom.ecc.emp.transaction.EMPTransactionDef;精品文档放心下载publicclassOrgIncomeBalanceServiceextendsEMPAction{感谢阅读privateStringdataSourceName=null;谢谢阅读privateDataSourcedataSource;感谢阅读//缺省事务为TRX_REQUIRED(全局事务)感谢阅读privateinttrxType=EMPTransactionDef.TRX_REQUIRED ;精品文档放心下载/****自定义SQL语句执行模板。**@paramContextcontext*@throwsEMPException*@returnString

交易定义的Context,服务会自动从Context中获取数据,或更新数据。谢谢阅读EMP异常。0,正常;2,记录未找到;-1,异常**/publicStringexecute(Contextcontext)throwsEMPException{谢谢阅读if(dataSourceName!=null&&dataSourceName.length()!=0)dataSource=(DataSource)context.getService(dataSourceName);感谢阅读-*if(dataSource==null)throw new EMPException("dataSource named \""+dataSourceName+"\"is not found in谢谢阅读JDBCSQLExecAction:"+this.toString());Connectionconnection=null;谢谢阅读PreparedStatementps=null;感谢阅读try{connection=ConnectionManager.getConnection(dataSource);/*****谢谢阅读此处为数据库处理过程***/return"0";}catch(EMPJDBCExceptionje){精品文档放心下载throwje;}catch(Exceptione){thrownewEMPException(e);精品文档放心下载}finally{if(ps!=null){try{ps.close();}catch(Exceptionex){}}if(connection!=null)ConnectionManager.releaseConnection(dataSource,connection);谢谢阅读}}publicvoidsetTransactionType(Stringvalue){感谢阅读//全局事务if("TRX_REQUIRED".equals(value))精品文档放心下载this.trxType=EMPTransactionDef.TRX_REQUIRED;感谢阅读//独立事务elseif("TRX_REQUIRE_NEW".equals(value))感谢阅读this.trxType=EMPTransactionDef.TRX_REQUIRE_NEW;谢谢阅读}publicEMPTransactionDefgetTransactionDef(){感谢阅读returnnewEMPTransactionDef(trxType);感谢阅读}-*//设置数据源名称publicvoidsetDataSource(StringdataSourceName){谢谢阅读this.dataSourceName=dataSourceName;感谢阅读}}其中数据输出有2种方法:方法1:IndexedCollectioniColl=null;谢谢阅读KeyedCollectionkColl=null;精品文档放心下载iColl=(IndexedCollection)context.getDataElement("analyseDataCollecion");if(iColl!=null){感谢阅读kColl=(KeyedCollection)iColl.getDataElement();感谢阅读}if(iColl!=null){while(rs.next()){kColl=(KeyedCollection)kColl.clone();谢谢阅读iColl.addDataElement(kColl);感谢阅读Stringvalue=rs.getString(1);精品文档放心下载Stringvalue2=rs.getString(2);感谢阅读kColl.setDataValue("analyseData_Count",value);谢谢阅读kColl.setDataValue("analyseData_Name",value2);感谢阅读}}这种方法的输出方式与使用EMP定义好的组件输出结构相同,但必须在数据字典中定义该数据结构,并且在数据结构中引用。精品文档放心下载方法2:context.addDataField("analyseData",object);精品文档放心下载这种方法的输出方式与使用EMP定义好的组件输出结构不同,可以传出各种不同对象,输出比较灵活,而且不必在数据字典中定义该数据结构。精品文档放心下载完成编码后在PackageExplorer中,右键点击该Java类选择“GenerateActionprofile”,之后选中project中的工程名称,点击【>>】,最后点击【Finish】将该类设置为一个EMP可用组件。如下图:谢谢阅读-*-*在逻辑流程中选择要使用的逻辑定义,在图版区内将需要使用的组件加入到图中(注意填写组件的属性,自定义Java类中transactionType为事务类型,dataSource为数据源ID,需要在步骤2中定义,步骤3中引用),即可。如下图:感谢阅读方式二:使

温馨提示

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

评论

0/150

提交评论