JAVA技术--基于java技术的软件开发架构总结.doc

JAVA技术--基于java技术的软件开发架构总结.doc

ID:51075255

大小:138.50 KB

页数:6页

时间:2020-03-18

JAVA技术--基于java技术的软件开发架构总结.doc_第1页
JAVA技术--基于java技术的软件开发架构总结.doc_第2页
JAVA技术--基于java技术的软件开发架构总结.doc_第3页
JAVA技术--基于java技术的软件开发架构总结.doc_第4页
JAVA技术--基于java技术的软件开发架构总结.doc_第5页
资源描述:

《JAVA技术--基于java技术的软件开发架构总结.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于java技术的软件开发架构总结表现层一>业务层>访问层资源层一般为数在具体的实现中,表现层可为Struts/JSF等,业务层、访问层可为JavaBean或EJB等,据库。宏观上的层次就是这样,在具体现实中,育如下几种实现形式:1,轻量级实现前端控制器>JavaBeanJavaBean视图

2、

3、应用控制器表现层业务层访问层表现层使用基于MVC的框架,比如Struts或JSF业务层使用JavaBean(就是常说的Service)访问层使丿IJJavaBean(就是常说的DAO)优点:轻帚级实现,简单明了〕缺点:难以无法实现分布式应用1以下功能必须通过编程实现〕事务控制澤资源管理(包括组件的创

4、建)”线程安金问题"安全性"2,垂最级J2EE实现门面服务控制器视图应用控制器前端控制器表现层业务层访问层表现层依然是基于MVC的框架访问层采用实体Been实现,如果可能最好采用CW>,实现起來更简洁。此处的实体BeanW以考虑采用水地接口业务层一分为二,服务控制器可以山会话Bean充当,用來封装业务流程(相当于轻最级实现屮的Service),也可以考虑采用本地接「1;门面也可以山会话Bean充当(一般來说无状态会话Bean足矣),作为业务层的入口,应该采用远程接口。优点:以下功能可山EJB容器自动实现,或通过配置实现1事务控制”远程访问"线程安全"资源管理"安全性"可以进行分布式应用1因

5、为采用了EJB,故部分特征可以由装配人员来配置(比如事务,安全性等),不需要在软件中硬编码】EJB组件有更好的贡用性〕可利用容器提供的其他企业级的功能(比如集群,容错,灾难恢复等门可以加入MDB(实现并步通讯)等技术〕缺点:开发难度较高〕如果不恰当的使用实体Bean,会造成效率低下。如果采用CMI),则很多数据访问的操作不能宜接实现。〕缺少良好的开发环境〕软件可能依赖于具体的EJB容器〕EJB容器可能很贵,开发软件也可能很贵12,轻最级和求最级J2EE的切换视图前端控制器应用控制器业务代表表现层服务控制器业务层访问层业务层访问层如果项目有需求,并有充分的时间,还可以通过在表现层和业务层的交

6、界处加入“业务代表”(JavaBean+服务定位器实现)来对表现层隐藏对业务层访问的细节(JavaBean和EJB的访问方式显然不同),只需替换“业务代表”就可以切换轻帚:级和重昴级两种实现。举例说明,一般电话上都有一个P/T开关(脉冲/音频开关),随着开关状态的不同,拨号时电话机会判断是使用脉冲拨号还是音频拨号。这种架构唯一的缺点就定必须对两套实现代码……轻最级J2EE实现前端控制器视图

7、

8、应用控制器表现层访问层通itJavaBean调用ORM框架实现(Hibernate,iBat,is等),代码简洁,功能完备(相对于EJB2.x而言),如果用的是Hibernate,可以忽略底层数据库的

9、差异,如果用的是iBatis,则方便对SQL进行优化。业务层和访问层依靠A()I>框架(如Spring)可以在切面屮实现爭务,安全性等功能,同时不影响业务代码。如果采用Spring,其中己经内置了事物切面,并可以轻易的与主流ORM框架进行整合,实现声明式的爭物管理。当然,更可以使用SC模式降低组件间的耦合性。优点:可以通过AOP框架实现歩物、安金性等功能,同时不影响业务代码"ORM框架比CMP更灵活,比BMP更简洁(相对于EJB"2.x而言),运行效率也比较高如果使用Spring,训以用更简单的方式实现J2EE屮比较复杂的功能"无需额外的容器”ORM和AOP框架町以找到免费的开源实现,降低

10、项H成木(不过也有人认为采用开源项H町能综合成木更高)”缺点:非官方框架,缺少文档、技术支持和业界经验"采用技术太多,学习曲线较高,难以招到合适的程序员(咱们学员可以考虑在这方面下点功夫,呵呵)”某些企业级的功能轻最级框架还不能实现(或独立实现)H测试、调试均比较复杂"5,其他另类实现J前端控制器视图应用控制器表现层门面服务控制器业务层访问层另类之处:使用BMP+Hibernate(具体做法为BMP中的持久化方法,比如ejbLoad,e.jbStore等都委托给Ilibernate实现)优点:借助于Hibernate强大的0RM功能弥补CMP的不足(特别是EJB-QL)缺点:事物不好控制不

11、伦不类,容易发生未知的错误(比如IIibernate白身的缓存可能会于容易提供的缓存冲突)前端控制器视图

12、

13、应用控制器表现层另类之处:将业务层(也可能包含访问层)包装成WebServices,支持远程调用优点:借助于WebServicesn

14、以实现松散耦合分布式应用,说的大一点,就是传说屮的S()A,呵呵缺点:WebServices自身效率不高,无状态,安全性差当然,即使不分层,也能做出软件来,但我们应该思考怎么做才能最

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。