版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
集成权限;新增3.8.11、3.8.12;Codemix3.93.9SG-UAPIDETomcatServers孟20195223.4SG-UAPIDE,只有3.7孟20198303.43.7孟2020修改微服务孟202035引 概 1 SG-UAPIDE安 SG-UAPIDE的运 开发指 集成 微服务MXWeb端开 微服务MVVMWeb端开 通过SG-UAPIDE向导打 配 如何部署、启动MXWeb项目、MVVM项目 开发测试阶段,如何简单地实现微服务和Web端联调 MOM模型中可以有多个业务实体吗 如果需要在微服务项目中第jar包如何操作 开发完提交代码时,在提交git本地库和Gitlab服务器同时,如何同步到分 Uap项目Gradle打包报错,在找不到模块项 启动SG-UAPIDE后,在新打开的工作空间中没有配置Tomcat的Servers项 Maven插件功能简 Git插件功能简 JadClipse插件功能简 Codemix插件简 引概本文以案例代码贯穿全文通过第二章第三章内容达到快速了解SG-UAP平过程,该章节针对平台的微服务项目创建、微服务Web项目等部分展开介绍了常API适用范名说SG-国家电网统一应用平台StateGridUnifiedApplicationSG-UAPSG-UAP(SG-UAPDevelopment微服务Web项目WebMicroserviceObjectModelWebuiMOM依赖于统一应用平台服务端标准的空的JavaUapStudio1-3-1开发环境部平台获业务项目组按照《平台管理办法实施细则》规定,按照平台使用申请 SG-UAPIDEUAPStudio.exenextSG-UAPIDE。需要特别注意的是,用户可以根据自身需求选择需要安装的组件。如果要进Uap组件”。2-1SG-UAPIDE运在SG-UAPIDE中,找elipse 下的UAPStudio.exe文件,选择合适的工作空间,即可运行SG-UAPIDE,进入后界面如图2-1所示:2-2SG-UAPIDE库的相关资料安装并启动数据库,以数据库管理员的登陆数据库,为微服务应用项目创建用户信息,并执行初始化建库。开发指环境配jdk环要求jdk的版本是jdk1.8gradle环安装在Gradle官网上gradle安装包(要求版本在2.5到5.0之间),解压UAP的gradle3-1-1配置UAP步骤2:UAPWindow->Preferences-Gradle(EnIDE)gradle。3-1-2配置UAP微应用开发流开发MOM如图3-2-3所示微应用开发的流程大致为先根据业务需求开发MOM模型;然后,开发人员根据设计好的开发MOM3-2-3MOM开MOMMOM模型项目,然后在MOM模型项目上,开发人员通过平台提供的向导“微服务业务对象建模”和“微服务数据库反向建模”创建MOM模型,并设计。创建MOM点击上的New按钮,选择“微应用->MOM模型项目”,也可以选择菜单栏中的“File>New>Other->微应用->MOM3-3-13-3-1新建OM选择“MOM“Next”,MOMMOM3-3-2MOMMOM模型项 结构如图3-3-3所示 MOM模型项目 结3-3-1MOM文件/文件作数据源,可以多个数据MOM3-3-1MOM模型项目中各个文件/创建MOM模MOMMOM模型有两种方式:微服务业务对象建模和微微服务业务对象建点击上的New按钮,选择菜单栏中的“File->New->Other->微应->微服务业务对象建模”,点击“Next”,3-3-43-3-43-53-3-53-3-63-3-6MOM3-3-73-3-7MOM在MOMMOM模型(MOM模型的设计方式和OM模型微服务数据库反向建点击上的New按钮,选择菜单栏中的“File->New->Other->微应3-3-83-3-8选择MOM项目。点击“浏览..”按钮,选择MOM3-3-93-3-9MOM4。3-3-10输入数据源参数,包括数据源名称、数据库类型、数据库ID(称)、服务器地址(ip或主机名称)、端口、用户名和,如图3-3-11所3-3-113-3-123-3-123-3-133-3-13选择一个数据源,点击“Next3-3-143-3-14选择需要转换的表,点击“Next”,3-3-153-3-153-3-16所示,如果要新建MOM文件,则选择“新建mom7。3-3-16图3-3-17设置新建mom名空间、模型名称、显示名3-3-18所示,选择一个MOM模型,点击“Next3-3-18MOM3-3-19Next”3-3-193-3-203-3-203-3-213-3-213-3-22所示,点击“FinishMOM3-3-22MOMMOM3-3-233-3-23MOM设计MOM模MOM模型的设计方法与OM模型一样,可依照OM服务业务模型设计器上的“代码生成”按钮,生成所需的业务代码,必要.23.4.3场景代码的创建过程;.5介绍如何在微服务中集成权限;3.4.6bpm。点击上的New按钮选择“微应用->微服务主项目”,点“Next”,也可以选择菜单栏中的“File->New3-4-13-4-1值,点击“Finish”,3-4-13-4-1生成项目 结构,如图3-4-3所示图3-4-3微服务主项 结微服务项目(平级)3-4-1文件/文件作*.gradle文.gradle文件是微服务主项目的构建文 了微服务服务依赖的第jar 用户放置的公共依赖jar3-4-1微服务项目中的各个文件/创建微服务项3-4-43-4-4next3-4-53-4-5SG-perties输入基础包名,点击“Next”,3-4-63-4-6Finish,3-4-73-4-7点击“AddDataSource”按钮,打开新建数据库连接框,选择对应的数据库类型(当前示例选择“Mysql”)3-4-83-4-8 选择驱动.示例中选中“MySQLJDBCDriver 如图3-4-10所示:3-4-10在框中输入数据库ID、主机名、端、用户名、,并勾选“Savepassword(3-4-11示框,点击“OK”按钮关闭框,如图3-4-12所示:3-4-12数据库连接生成的微服务项 结构,如图3-4-13所示图3-4-13新建微服务项目 结3-4-2文件/文件作Tomcat过滤httpgetpost据rabbitMQlog-jar微服务项目的构建文件,主要该项目所需的包3-4-2微服务项目中的各个文件/生成微服务场景代通过“微服务场景代码”向导生成3-4-143-4-14MOM(MOM建MOMMOMMOM3.3);然后,点击“Next3-4-153-4-15微服务场景代码-MOM置包括生成代码存放位置(根)3-4-163-4-16微服务场景代码-3-4-173-4-17微服务场景代码-点击“Finish”3-4-183-4-18微服务场景代码-3-4-2文作当前场景(product)实体类POVO数据接场景(product)ddl3-4-2通过“微服务业务模型设计器”上的“代码生成”按钮生成代 上的“代码生成”按钮,如图3-4-19所示:5-5-19选择微服务项目在弹出的框上选择生成代码的目标微服务项目,3-4-205-5-20置包括生成代码存放位置(根)3-4-213-4-213-4-223-4-22Finish3-4-233-4-233-4-243-4-24applicationCorsConfig.javaCorsConfig.java3-4-25 将@Configuration3-4-26 集成权 pertiesisc3-4-26isc在perties配置文件中配置isc业务系统appIdisc_uap.appId以及isckeyisc_uap.entryKey(isckey值与前端key) isc的配isc需修改微服务主项目uaplibisc_sm_agent.jar中perties配置文件uri和appId值为当前isc系统uriappId isc_sm_agentjar 配置isc的uri和 pertieslbss 验证lbss开关是否开3)perties配置文件中配置轻量级权限系统idlbss_uap.systemId以及轻量级权限keylbss_uap.entryKey(轻量级权限key值与前端加密key值保持一致) 在pertieswebservice 集成在SG-UAP微服务项目上实现与SG-BPMV3.7版本的集成,主要通过SG-BPMAPI接口,实现流程的流转。启用SG-在SG-UAP微服务项目中启用将SG-BPMpertiesbpm=truebpm 配置BPM微服务调用BPM接口时配置SG-BPM的租户ID和令牌信息,修改periese配置文件。(#BPM#BPMbpm_uap.bpmTenantToken=#BPM租户IDbpm_uap.bpmTenantIduaptestbpm_uap.bpmUrlbpm_uap.bpmTenantToken:bpmSG-BPM部署(BPM安装中的地址)在/bpm/bpm37/workspace/WEB-INF/classes/uddi-address.xml文bpm_uap.bpmTenantId:bpm租户idID在SG-BPM部署(BPM安装中的地址)在/bpm/bpm37/workspace/WEB-INF/classes/uddi-address.xmlbpm_uap.bpmUr:工作流地址,将ip和端口修改成bpm服务ip调用SG-BPMControllerDemoControllerimport;importimport publicclassFengTestControllerpublicpublicStringStringresult=BPMService.createProcessInstance("uap_bpm","tiger","ceshi","ceshiliucheng","true");return}}tigeruap_bpm业务中创建一个名为‘ceshi’的流SG-BPM用户使用手册。启动微服务项目,通过浏览器启动流程 WebUAPSudio提供了两种微服务的Web项目:MXWeb项目和MVVMWeb项目。下面分别介绍如何创建微服务MXWeb项目和创建微服务MVVMWeb项目。UAPIDEMXWebMXWeb开创建MXWeb目过点击上的New按钮,选择“微应用->MXWeb项目”,也可以选择菜单栏中的“File>New->Other->微应用->MXWeb“Next”按3-5-13-5-1WebMXWeb点击“Finish”,MXWeb3-5-23-5-3MXWeb选择界面布局模板,点击“Next”,3-5-43-5-4设置编译java应用后生成的文件输出 如图3-5-5所示:3-5-5设置MXWeb项目上下文根 成MXWeb项目的创建。如图3-5-6所示:3-5-6MXWebMXWeb项目 结构如图3-5-7所示 结3-5-1MXWeb文件/文件作生成微服务前端mui及前端MX代UAPMXWeb项目中创建muiMX代码。界面模型向导提供两种创建mui模型的方式:全新创muiMX代码,用户可以通过界面设计器来设计界面,然后通过设计器上的“生成代码”按钮生成前端MXUAPIDE提供的,各种场景(单表、主从表、树)界面模板,生成muiMX代码。全新创建空白界面MXWeb“File-->Other->微应用->微服务界面模型(*.mui)”,3-5-73-5-7“Finish”3-5-83-5-8mui3-5-93-5-9mui根据场景模板创单表场选中当前工作空间的一个MXWeb项目,选择菜单栏中的“File-->Other->微应用->微服务界面模型(*.mui)”,3-5-103-5-10选择MOM项目。点击“选择”按钮,选择一个MOM模型项目(如果当前工作空间没有MOM模型项目则需要MOM模型并在MOM项目下MOM3.4),点击“OK”,3-5-113-5-11MOM3-5-12 mui模型向导-mui模型信息设 3-5-133-5-143-5-143-5-153-5-15编辑表格数据源-过滤列选择,即设置表格上的查询条件,默认没有过滤的列,可以通过右侧3-5-163-5-16编辑表格数据源-过滤列选择GroupBox3-5-173-5-1718
3-5-18mui选中当前工作空间的一个MXWeb项目,选择菜单栏中的“File-->Other->微应用->微服务界面模型(*.mui)”,3-5-193-5-19选择MOM项目。点击“选择”按钮,选择一个MOM模型项目(如果当前工作空间没有MOM模型项目则需要MOM模型并在MOM项目下MOM3.4),点击“OK”,3-5-203-5-20MOM3-5-21 mui模型向导-mui模型信息设景为例,点击“Next”3-5-223-5-223-5-233-5-23选择场景数据源-5-243-5-24选择场景数据源-3-5-253-5-25编辑表格数据源-3-5-263-5-26编辑表格数据源-过滤列选择GroupBox3-5-273-5-27283-5-28mui配置MXWeb根据“界面模型”向导,创建mui模型及前端代码后,为了MXWeb项目能够正常运行,还需要在conf/config.js文件中配置一下网关地址,如图3-5-29所3-5-29MXWebMVVMWeb创建MVVMWeb过点击上的New按钮,选择“微应用->MVVMWeb项目”,也可以选择MVVMWeb3-5-303-5-30MVVMWebMVVMWebisclbss, 点击“Finish”,MVVMWeb3-5-32MVVMWeb集成权集成新建MVVMWeb项目时,勾选isc3-5-33src下的perties3-5-34isc地址、appId其中isc_uap.entryKey为国密sm4的加密秘钥,用于加密返回的用户id。isc_uap.funcType=01对应isc中的菜单类型。 isc_sm_agent.jar中perties配置文件uri和appId值为当前isc系统uriappId值图3-5-36 需要修改配置文件的jar包4)项目自带了三分页场景factoryLayout,其中的菜单根据配置自动从isc获取, cube.includeType="viewModel";isccube isc中配置受控资当cube.includeType="iframe";时,在isc中需配置场景页面注:WebContent\factoryLayout\pages\zhywmx文件夹下为cube示例代码可删除。
isc登陆示例效在新建MVVMWeb项目时,勾选lbss perties isc_uap.entryKey为国密sm4的加密秘钥,用于加密返回的用户id。isc_uap.moduleCode对应轻量级权限系统中的模块编码,不配置时获取所有有权3-5-42项目自带了三分页场景factoryLayout,其中的菜单根据配置自动从轻量 当cube.includeType="viewModel";时,在轻量级权限需配置cube框架开发项目pages下的页面。 当cube.includeType="iframe";时,在isc中需配置场景页面。4ebontent\factoryLayout\page\zhywmx 微服务项目打微服务项目打包提供两种方式:通过SG-UAPIDE使用向导的形式进行批 下,使用相应令进行批量、单独打通过SG-UAPIDE批量打SG-UAPIDERunas”,然后点击向导“Gradle(STS)Build…”,3-6-1:3-6-1GradleTasks“build”,3-6-3-6-2ArgumentsJRE,3-6-3-6-3Run”按钮,每个微服务将打包后的jar文件放置到相应的 单独打SG-UAPIDERun然后点击向导“Gradle(STS)Build…”,3-6-4:3-6-4GradleTasks“build”,3-6-3-6-5ArgumentsJRE,3-6-3-6-6通过命令打批量打gradlebuildjarbuild/libs下。单独打 ,打开命令行,执行gradlebuild命令,jar文件将放到build/libs 开发示product表的创建表的sql语句createcreatetablePRODUCTIDvarchar(192)notnullcomment'id',PRODUCT_MODELtextcomment'product_model',PRODUCT_NAMEtextcomment'product_name',PART_DRAWING_NUMBERtextcomment'part_drawing_number',PART_NAMEtextcomment'part_name',MATERIAL_TRADEMARKtextcomment'material_trademark',MATERIAL_TYPEtextcomment'material_type',MATERIAL_SPECtextcomment'material_spec',SINGLE_NUMBERdoubleprecisioncommentBLANK_DIMENSIONBLANK_DIMENSIONfloatcomment'blank_dimension',SUIT_NUMBERdoubleprecisioncomment'suit_number',BLE_NUMBERdoubleprecisioncomment'primarykey)创建项目及模MOMMOM按照3.2的微应用开发流程,参照3.3.1创建MOM模型项目,参照创建与product表相对应的MOM模型com.sgcc.uap.test2。参照3.4.1创建微服MOMMOM3-7-13-7-1.33-7-2所3-7-23-7-33-7-3配微服务microservice1配3.4.4对microservice1perties3-7-43-7-43-7-5CorsConfig.java文件配置,去掉@Configuration3-7-3-7-6CorsConfig.javaMxWebTest项目配MxWebTest3-7-7部署启启动微服务右键,再点击run/debug->JavaApplication3-7-8所示:3-7-8部署并启动MxWebTest项和普通JavaWebMxWebTestUAPIDE自带的3-7-9联调测 3-7-10
图3-7-10结图3-7-11结如何启动微服ApplicationUAP上的启动按钮,或者右键选择run或debug3-8-1所示:3-8-1如何部署、启动MXWeb项目、MVVM项目MXWeb项目和MVVM项目实际上都是JavaWeb项目,部署、启动的方法和普通JavaWeb项目相同。开发测试阶段,如何简单地实现微服务和Web端联调首先,将类文件CorsConfig.java中@Configuration注解前的注释去掉,并MXWebconf/config.jsgatewayURL配置为待测试微服3-8-2所示:3-8-2MXWeb项目部署到tomcat表主键类型为非字符类型,通过想到生成代码service代码文件报错新建一张自关联的表,其sql如下:alteraltertableforeignkeydroptableifexistscreatetableTESTTREEIDIDbigintnotnullcomment'id',parent_idbigint,NAMEvarchar(255)commentprimarykey)altertableaddindexFK_Testtree_Testtree_parentidaddconstraintforeignkeyreferencesTESTTREESG-UAPIDEMOM模型,再通3-8-33-8-3但生成代码Service3-8-43-8-4TreeNodesetIdString类型。而当前实体类的id为Long类型,类型不匹配,所以会报错。MOM模型中可以有多个业务实体吗OM页面报页面错误,获取不到数按照开发指南操作,开发了微服务和MXWeb项目,发现页面报页3-8-5示:图3-8-5页面获取不到数ebContent/conf/config.js)的gatewayURL是否配置正确如果需要在微服务项目中第jar包如何操作将第jar包添加到微服务项目的 下新构建该微服务项目即可(也可以使用快捷键Ctrl+F5),3-8-6所示:3-8-6 应该怎么操作?MOM模型中,新建枚举类型,点击“枚举”拖拽到设计器上,3-8-7所示:3-8-7点击ok,并报错MOM模型;双击需要设置下拉框的业务实体(示例为product),再双击需要设置的属性(partName),tab页面,3-8-8所示:3-8-8对象,点击ok,再点击“ok3-8-9所示:3-8-9设置下拉框及下拉框数据来源(枚举3-8-103-8-10枚举示例还是product为例,设置下拉列表的数据来源是某一张表(project)ject实体到product实体所在MOM模型上,3-8-113-8-11在MOM点击ok,并报错MOM模型;双击需要设置下拉框的业务实体(product),再双击需要设置的属性(productModel),tab页3-8-12所示:3-8-12枚举对象,点击ok,再点击“ok3-8-13所示:3-8-13设置下拉框及下拉框数据来源(业务数据3-8-143-8-14业务数据示例 开发完提交代码时,在提交git本地库和Gitlab服务器同时,如何同步到新版SG-UAPIDE集成了Git插件,并扩展实现了提交代码时,将提交信息同在“Preferences->UAPIDE->分布式协同研发平台配置”页面上,配置分布式协同研发平台的WebService地址、用户名和,然后点击“OK”按钮即3-8-15所示:3-8-15webService及账号在提交代码时弹出的填写提交代码信息的框中在填写完提交信3-8-163-8-16173-8-173-8-18所示:3-8-18交代码关联的任务是“pm生成sql”,可以点击对应的任务页面,点击超“”,再点击“变更集”看以看到结果,如图3-8-19所示:3-8-19创建微服务项目,生成场景代码后,代码报原因:微服务项目对于jar包的是通过开关控制的,除了一些基础的jar中了jpa及数据源相关的类,而数据源和jpa相关jar包没有被加载,所以报将 设置为dataSourceponments设置为jpa2.x3-8-20设置pties创建微服务主项目,报Gradle错3-8-21GradleGradle但在IDE解决方案:Gradle;2.3-8-22刷新gradleUap项目Gradle打包报错,在找不到模块项SG-UAPIDEGradleUap项目报错,找不到模块项目,如下图3-8-23Uap项目gradle报错原因:1.模块项目已经被删除;2.uap项目与模块项目都存在,但不在同一级下,可能是UapGitGit仓库所在目录与模块项目所在不是同一个。2.保证Uap项目与其关联的模块项目在同一 下如果Uap项目提交到了GitSG-UAPIDE后,在新打开的工作空间中没有配置Tomcat项SG-UAPIDEServers项目,如下图3-8- 启动SG-UAPIDE没有Servers项并且,在下方的Servers视图中也没有Server图3-8-25 启动SG-UAPIDE没有Server配置没有配置Server,就不能部署调试Uap项目和模块项目。IDE即可。新集成插件功能介SG-UAPIDE集成了maven插件、Git插件及反编译插件——JadClipse以及前端开发插件codemixMaven插件提供mavenmaven模块项目的创建、构建等等功能;Git插件是Git(分布式版本控制系统)在Eclipse上的实现,提供了丰富的项目代码管理功能,Uap在该插件基础上做了一些修改,使之与分布式协同研发管理平台融合;JadClipse可将class文件反编译成java文件;codemix插件提供了vue、angular、react等前端技术的开发及调试环境。Maven插件功能下面以创建一个简单的maven项目及maven创建maven项点击上的New按钮,选择“微应用->MavenProject”,也可以选择菜单栏中的“File>New>Other->微应用->MavenProject”,“Next”3-9-13-9-1选择mavenprojectmavencreateasimpleproject,点击“Next”按3-9-23-9-2选择mavenGroupId、ArtifactId,点击“Finish”,maven3-9-33-9-3完成mavenmaven3-9-43-9-4maven需要特别的是由于maven项目的创建过程中需要连接网络所需jar包,如果没有联网可以连接局域网搭建的,否则创建项目可能会失败。创建module项点击上的New按钮,选择“微应用->MavenModule”,也可以选择菜单栏中的“File>New>Other->微应用->MavenModule”,点击“Next”按3-9-53-9-5选择mavenmodulemavenmodule向导中,选择createasimpleproject,输入3-9-6设置mavenmo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论