SOA从应用开始暨SOA新平台发布_第1页
SOA从应用开始暨SOA新平台发布_第2页
SOA从应用开始暨SOA新平台发布_第3页
SOA从应用开始暨SOA新平台发布_第4页
SOA从应用开始暨SOA新平台发布_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

陈光耀

2010-11EOS6.3新特性培训EOS6.3的新特性EOS6.3的新特性融合开源Spring框架开发期支持功能向导自动生成实现代码纯Java的业务构件开发方式与EOS的事务无缝集成提供更强的装配功能,将Spring构件发布为服务,引用其他服务轻量化的标准EAR部署方式支持应用部署模式轻量化、标准化管理模式轻量化安装包提供了最佳实践对应用服务器的侵入性降低产品定位开发工具技术平台封闭性开放性新特性一:Spring支持目录新特性一:Spring支持概述SpringBean开发SpringBean调用SpringBean的装配Spring支持–概述基本功能SpringBean开发新建Bean向导、资源树显示、功能向导SpringBean调用Spring图元、API调用统计监控、日志SpringBean的装配(服务发布、引用)SpringBean和逻辑构件关系可完全替代逻辑构件,开发业务逻辑SpringBean逻辑构件SpringBean的方法逻辑流逻辑流可以作为编排工具,将小粒度构件组装成大粒度构件Spring支持SpringBean开发新建SpringBean向导、功能向导SpringBean配置(应用级和构件包级)使用DAOTemplate开发基于数据库程序使用事务配置多数据源Spring支持–SpringBean开发SpringBean开发创建SpringBean向导自动创建SpringBean的Java文件自动生成SpringBean的配置文件注册项SpringBean开发SpringBean开发资源视图、构件库视图显示Spring配置文件和Bean、方法应用级、构件包级两级配置文件应用级:exf/config/spring.xml构件包级:META-INF/spring/beans.xml支持手工编辑Spring配置文件配置文件支持编译检查SpringBean开发Spring功能向导增删改查向导(DAO向导)纯Java方式,不含页面流单表维护向导主从表维护向导SpringBean配置应用级、构件包级两级配置应用级配置(exf/config/spring.xml)公共Bean数据源(DefaultDataSource)事务管理器(DefaultTransactionManager)事务传播属性(DefaultNamingTransactionAttribute)事务代理(DefaultBaseTransactionProxy)扩展事务代理的Bean,可以使用数据库事务默认Bean拦截器(BeanInterceptor)Bean调用系统日志、引擎日志Bean调用的统计监控Bean名称的自动代理(BeanNameAutoProxy)自动匹配所有的Bean,对所有的Bean调用使用拦截器(如BeanInterceptor)可以缩小匹配范围,改beanName属性值:*Abc*Spring事务采用AOP事务代理声明父类为DefaultBaseTransactionProxy的Bean通过方法名称称匹配事务((如insert*,update*)是否需要事务务有事务传播播属性Bean配置确定采用逻辑流的的事务(必须须使用逻辑流流)Spring事务—事务传播属性性<beanid="DefaultNamingTransactionAttribute"class="erceptor.NameMatchTransactionAttributeSource"><propertyname="properties"><props><propkey="insert*">PROPAGATION_REQUIRED</prop><propkey="create*">PROPAGATION_REQUIRED</prop><propkey="update*">PROPAGATION_REQUIRED</prop><propkey="delete*">PROPAGATION_REQUIRED</prop><propkey="save*">PROPAGATION_REQUIRED</prop><propkey="remove*">PROPAGATION_REQUIRED</prop><propkey="query*">PROPAGATION_REQUIRED,readOnly</prop><propkey="*">PROPAGATION_REQUIRED,readOnly</prop></props></property></bean>说明:insert*:匹配insertEntity、insertData等方法create*:匹配createEntity、createData等方法update*:匹配updateEntity等方法*:匹配所有有方法注意:功能向向导生成的方方法是addXXX(),与模板的不一一致(bug),请修改配配置文件,增增加add*匹配项。SpringBean事务—事务传播属性性事务传播属性性(TransactionDefinition接口中定义))属性值属性含义PROPAGATION_REQUIRED需要事务,外部不存在事务则创建新事务,否则加入外部事务。(最常用)PROPAGATION_SUPPORTS支持事务,外部有事务则加入事务;无外部事务也不创建新事务,以非事务方式运行。PROPAGATION_MANDATORY强制使用事务,外部无事务则抛异常。PROPAGATION_REQUIRES_NEW需要新事务;外部无事务就创建新事务,外部有事务则被挂起,并创建新事务。PROPAGATION_NOT_SUPPORTED不支持当前事务,外部有事务则挂起外部事务,以非事务方式运行PROPAGATION_NEVER不支持当前事务,外部有事务则抛异常PROPAGATION_NESTED(Spring特有)事务嵌套,外部有事务时,运行在嵌套事务中。外部无事务,则新建事务(类似REQUIRED)Spring开发示例示例1.利用EOS提供的DASTemplate开发Bean创建数据实体体:Oorg生成静态SDO:OOrg.java/OOrgImpl.java创建Bean,OrgService,扩展DASDaoSupport类publicclassOrgServiceextendsDASDaoSupport{publicvoidinsertOrg(OOrgorg){getDASTemplate().getPrimaryKey(org);getDASTemplate().insertEntity(org);}publicvoidupdateOrg(OOrgorg){getDASTemplate().updateEntity(org);}}Spring开发示例示例1.利用EOS提供的DASTemplate开发Bean1)使用逻辑流流的事务Spring开发示例示例2.利用EOS提供的的DASTemplate开发Bean2)使用用事务务代理理Spring开发示示例示例3.使用多多数据据源进进行开开发通过governor配置多多数据据源,,default,ds2更改应应用级级配置置:系系统配配置/config/spring.xml<beanid="DataSource2"class="com.eos.spring.DASDataSource"><propertyname="dataSourceName"><value>ds2</value></property></bean>增加新新数据据源表表的数数据实实体((Log)将Log转为静静态SDO对象增加数数据库库记录录日志志的Bean(LogServiceBean)Spring开发示示例示例3.使用多多数据据源进进行开开发增加数数据库库记录录日志志的Bean(LogServiceBean)增加新新的BeanOrgServiceWithLogBean保存业业务数数据+记录DB日志publicclassLogServiceextendsDASDaoSupport{publicvoidlog(Stringmessage){Loglog=newLogImpl();log.setLog(message);getDASTemplate().getPrimaryKey(log);getDASTemplate().insertEntity(log);}}Spring开发示示例2.使用多多数据据源进进行开开发使用一一个事务拦拦代理理,创创建一一个facidebean使用逻逻辑流流(insertWithLog)调用用新的的OrgServiceWithLogFacideBean<beanid="OrgServiceWithLogBean"class="com.primeton.sample.dao.OrgServiceWithLog"><constructor-argindex="0"><refbean="OrgServiceBean"/></constructor-arg><constructor-argindex="1"><refbean="LogServiceBean"/></constructor-arg></bean><beanid="OrgServiceWithLogFacideBean"parent="DefaultBaseTransactionProxy"><propertyname="proxyInterfaces"><list><value>com.primeton.sample.dao.IOrgService</value></list></property><propertyname="target"><refbean="OrgServiceWithLogBean"/></property></bean>Spring开发示示例示例4.开发一一个Bean拦截器器开发一一个MyInterceptorBean,实现现接口修改spring.xml右键部部署调试运运行ercept.MethodInterceptor;ercept.MethodInvocation;publicclassMyInterceptorimplementsMethodInterceptor{publicObjectinvoke(MethodInvocationinvocation)throwsThrowable{System.out.println("Beforeinvoke"+invocation.getMethod());Objectret=ceed();System.out.println("Afterinvoke"+invocation.getMethod());returnret;}}Spring支持Spring调用页面流流、逻逻辑流流调用用Spring图元API方式调调用::BeanFactory.getBean(StringbeanID)Spring调用的的系统统日志志、引引擎日日志Spring调用的的统计计监控控Spring调用—示例((API调用))示例5:API方式调调用Bean创建调调用Client程序((为方方便,,使用用运算算逻辑辑)BeanCallerDemo.java逻辑流流(apiDemo)调用用运算算逻辑辑逻辑流流调试试运行行@Bizlet("")publicclassBeanCallerDemo{@Bizlet("")publicvoiddemo(){IOrgServiceorgService=(IOrgService)BeanFactory.newInstance().getBean("OrgServiceBean");OOrgorg=newOOrgImpl();org.setOrgName("广发证证券");org.setOrgCode("GFZQ");orgService.insertOrg(org);}}Spring支持Spring装配将SpringBean发布为为服务务SpringBean引用其其他服服务SpringBean装配–示例示例6.将LogServiceBean装配发发布为为服务务将LogServiceBan发布为为WebService注意::要选选择bean.xml下的Bean,右键菜菜单““封装装为WebService”使用IE测试服服务发发布的的wsdl使用soapUI测试SpringBean装配–示例示例7.引用外外部的的WebService引用一一个外外部的的HelloWebService,打印印一段段祝贺贺语演示helloWebService导入wsdl新建HelloFacideBean()添加IHello引用将HelloFacideBean拖入装装配图图绑定引引用Promote服务,,并绑绑定WebService使用soapUI测试服服务SpringBean装配–示例@RemotablepublicclassHelloFacide{privateIHellohelloReference;publicStringhello(Stringname,Stringgreeting){returnthis.helloReference.hello(name,greeting);}publicIHellogetHelloReference(){returnhelloReference;}publicvoidsetHelloReference(IHellohelloReference){this.helloReference=helloReference;}}<beanclass="com.primeton.sample.serviceref.HelloFacide"id="HelloFacideBean"><propertyname="helloReference"ref="HelloReference"/></bean><sca:servicename="HelloFacideService"target="HelloFacideBean"type="com.primeton.sample.serviceref.HelloFacide"/><sca:referencename="HelloReference"type="com.primeton.sample.serviceref.IHello"/>新特性性二::标准EAR部署模模式支支持目录新特性性二::标准准EAR部署模模式支支持什么是是标准准EAR部署模模式EOS6.1存在什什么问问题EOS6.3部署模模式、、管理理模式式和6.1的区别别EOS6.3的项目目开发发EOS6.3的应用用部署署集群应应用的的安装装(WebLogic、WebSPhere)EOS6.1应用升升级到到6.3标准EAR支持什么是是标准准EAR部署模模式使用标标准J2EE应用部部署方方式部部署应应用控制台台部署署EAR/WAR(WebLogic、WebSphere)Ear/WAR目录录/文件件复复制制到到应应用用部部署署目目录录((Tomcat、JBoss)EOS6.1存在在的的问问题题非标标准准EAR方式式部部署署部署署模模式式重重,,Server+应用用不支支持持文文件件方方式式部部署署((Jboss、WebLogic)对应应用用服服务务器器侵侵入入性性强强系统统级级jar系统统级级配配置置更更改改管理理模模式式重重,,管管理理服服务务器器+被管管服服务务器器嵌入入式式标准准EAR支持持EOS6.3部署署模模式式、、管管理理模模式式和和6.1的区区别别部署署和和管管理理模模式式的的变变革革(轻量量化化、、简简化化)标准准EAR支持持EOS6.3和嵌嵌入入式式BPS的区区别别1、嵌嵌入入式式BPS只支支持持war部署署,,6.3对war、ear部署署都都支支持持2、对对于于jboss和weblogic,嵌嵌入入式式BPS只支支持持目目录录方方式式部部署署,,而而6.3支持持目目录录、、文文件件两两种种方式式部部署署3、嵌嵌入入式式BPS不支支持持和和EJB和JMS,异异步步调调用用只只能能使使用用线线程程,,性性能能差差;;6.3支持持EJB、JMS。3、嵌嵌入入式式BPS改造造的的不不够够彻彻底底,,对对websphere还使使用用共共享享库库方方式式,,对对server有侵侵入入性性;;6.3改造造较较为为彻彻底底,,系系统统级级的的jar很少少((基基本本是是jdbc等)),,对对was不使使用用共共享享库库,,只只改改动动EAR的类类加加载载模模式式为为PARENT_LAST。4、6.3的目目录录结结构构和和嵌嵌入入式式BPS有较较大大的的不不同同,,6.3目录录结结构构调调整整的的更更合合理理,,路路径径长长度度更更短,,因因此此可可以以避避免免window平台台因因过过长长路路径径而而无无法法部部署署的的问问题题。。5、6.3有govenror,可可以以管管控控6.3的标标准准ear应用用;;嵌嵌入入式式BPS无governor可以以管管控控。。6、6.3支持持集集群群,,嵌嵌入入式式BPS不支支持持集集群群。。7、6.3原有有安安装装包包,,可可以以安安装装单单机机和和集集群群环环境境,,嵌嵌入入式式BPS不提提供供安安装装包包,,只只能能手手工工安安装war。8、嵌嵌入入式式BPS支持持配配置置外外部部目目录录,,但但外外部部目目录录包包含含了了所所有有的的应应用用程程序序和和配配置置;;6.3也支支持外外置置目目录录,,但但目目录录只只包包含含配配置置文文件件和和启启动动参参数数。。9、嵌嵌入入式式BPS通过过web.xml设置置一一些些启启动动参参数数,,如如IP和端端口口,,6.3仍然然兼兼容容,,但但不不推推荐荐;;6.3提供供一一套套外外置置配配置置的的启启动动设设置置,,并并结结合合安安装装包包提提供供最最佳佳实实践践。。6.3的配配置置较较嵌嵌入入式式BPS更灵灵活活。。10、嵌嵌入入式式BPS不提提供供工工具具导导出出war文件件功功能能,,开开发发过过程程需需要要手手工工打打war,即即困困难难又又容容易易出错错。。6.3提供供Studio工具具,,可可以以直直接接将将项项目目导导出出war或ear。标准准EAR支持持EOS6.3部署署模模式式、、管管理理模模式式和和6.1的区区别别EOS6.1哪些些功功能能在在6.3没有有服务务器器管管理理应用用管管理理组管管理理集群群管管理理组内内应应用用管管理理应用用管管理理((创创建建、、部部署署、、卸卸载载、、删删除除、、导导入入、、导导出出、、启启动动))构件件包包版版本本切切换换系统统构构件件包包平台台模模块块管管理理构件件包包配配置置((数数据据源源、、日日志志))事务务配配置置、、资资源源访访问问权权限限配配置置、、流流程程引引擎擎配配置置、、构构件件运运行行环环境境配配置置、、MUO配置置、、服服务务变变量量Handler配置置标准准EAR支持持应用用部部署署目目录录说说明明标准准EAR支持持外置置目目录录说说明明无外外置置目目录录可可以以运运行行,,但但不不推推荐荐AdminPort=6200Why外置置目录录?标准准EAR支持持EOS6.3的项目开开发项目开发发,新增增应用配配置文件件目录和和web.xmlexf/config,WEB-INF/web.xml配置文件件的说明明,联机机帮助—技术参考考—EOS基础参考考手册—附录(EOS配置文件件说明))服务器应应用关联联JBoss、Weblogic注意要配配置外置置目录,,这样才才和安装装包安装装的一致致配置文件件开发期期部署、、删除规规则配置文件件不自动动部署,,只能手手工部署署配置文件件可以删删除,但但不自动动删除服服务器上上资源导出EAR多项目开开发最佳佳实践设定一个个主项目目,保存存所有应应用配置置文件导出EAR时选择该该主项目目,作为为包含配配置文件件的基准准项目标准EAR支持EOS6.3的应用部部署

温馨提示

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

评论

0/150

提交评论