版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
陈光耀
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,实现现ercept.MethodInterceptor接口修改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(com.primeton.sample.serviceref)添加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=6200LocalIP=8Why外置目录?标准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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025合同法学教学大纲
- 2025有限公司员工试用期合同
- 2025商业地产销售代理合同
- 二零二五年度地质灾害应急土方运输服务合同3篇
- 2025年度养殖场养殖废弃物资源化利用合同3篇
- 2025年度科技创新园区拆迁房产分割与产业扶持协议3篇
- 2025年度林业产业发展竞业禁止模板木方交易协议3篇
- 二零二五年度农村集体建设用地个人地基买卖合同2篇
- 二零二五年度高速公路建设项目承包协议3篇
- 2025年度水上旅游安全事故处理与救援服务协议3篇
- 矿业公司规章制度汇编
- 《高低压配电室施工工艺标准》
- 2024年太阳能光伏组件高空清洗作业人员安全保障合同3篇
- 大学学业规划讲座
- 《国家课程建设》课件
- 浙江省衢州市2023-2024学年高一上学期1月期末数学试题 含解析
- 【课件】Unit+5+Fun+Clubs+Section+B+1a-2b课件人教版(2024)七年级英语上册++
- 江苏省南通市海门区2023-2024学年三年级上学期期末语文试题
- 新教科版小学1-6年级科学需做实验目录
- 2024年贵州贵阳市贵安新区产业发展控股集团有限公司招聘笔试参考题库含答案解析
- 美国RAZ分级读物目录整理
评论
0/150
提交评论