`

J2EE框架设计技术分析

阅读更多

设计目标

1. 开发效率

2. 性能、预算

3. 符合OO设计

4. 避免复杂性

5. 可维护性、可扩展性,可重用性

分布式应用

不足:

1. 增加了应用的复杂性

2. 对性能会造成一定的影响

3. OO Design带来一定的困难

优点:

1. 能满足多类型客户端的需求(applet, swing

2. 能同时将组件部署到不同的应用服务器

采用前提:

1. 客户端需要使用J2EE技术,比如Swing

2. 为了与已有的分布式应用集成

3. 需要将J2EE组件部署到多个应用服务器

4. 实现对多应用组件部署进行控制,提高系统灵活性、可靠性

可选技术:

可通过集群和负载平衡(remote interface调用单服务器应用)来实现分布式应用的健壮性、灵活性

EJB技术

缺点:

1. 测试困难

2. 部署麻烦(classloader复杂、部署描述符复杂、开发-部署-测试周期长)

3. 采用remote interfaceEJB不符合OO Design

4. 技术复杂,可能将简单需求变得复杂开发

5. 减少了应用服务器的选择

优点:

1. 能远程访问组件

2. 能将应用组件部署到不同服务器(分布式应用)

3. 支持多客户端访问

4. 使用到异步消息模式的时候可以采用message driven bean

5. 能实现复杂的事务管理

采用前提:

1、 EJB底层比较熟悉

2、 需要使用EJB的角色安全访问

3、 需要使用EJB的事务管理

4、 需要使用EJB的线程安全管理

5、 需要使用基于RMI/IIOP的分布式架构

4J2EE基本框架

一.非分布式框架

1(Web UI tier + Business Logic tier) + implement tier + DBMS

实现简单、能满足大部分需求,是中小型J2EE项目中采用最多的框架,虽然没有使用EJB,但是层次清晰。

优点:

1.简单

2.速度快

3.符合OO设计

4.容易测试

缺点:

1.仅仅适用于Web UI

2.自己管理事务

3.无法实现高并发处理

4.无法使用entity bean

5.不支持多JVM应用

2Web UI + local EJB + DBMS

稍微复杂,能使用EJB容器的事务,线程管理,没有采用分布式特性,性能比远程调用稍好

优点:

1.降低了EJB的复杂度

2.不会对基础框架造成影响

3.本地调用对性能有一定优势

4.可以使用EJB容器的事务和线程管理

5.可以使用entity bean

缺点:

1.比纯web应用复杂

2.单JVM运行

3.单客户端(web)支持

4.测试困难

二.分布式框架

1.基于远程调用的分布式

架构最复杂,对有远程访问客户端的需求是理想选择,健壮、灵活,但是不容易维护、测试、实现困难

优点:

1. 多客户端支持

2. 可将应用组件部署到多台服务器(JVM

缺点:

1.增加了复杂度

2.影响性能

3.调试困难

4.必须在EJB容器中运行

5.异常处理复杂

6OO设计困难

2.基于Web Service的分布式

对非J2EE客户端调用适用性好,无分布式调用,往往作为第一、第二架构的变体。

优点:

1. 通用标准,能支持更多客户端类型

2. 提供的Web service接口比RMI接口更好

3. Web service传输协议比RMI更友好

缺点:

1. 性能差

2. 需要作objectxml之间的转换

3. 相对于java client来说,性能也不好

UI框架部分

选择UI的几个决定性因素:

1. 用户的实际需求

2. 项目的性能要求

3. 当前开发人员技术水平

J2EE框架设计几个需要强调的观点

简单

可维护性

性能

开发效率

J2EE框架设计通用法则

1. 使用J2EE,而不是让J2EE牵着鼻子走(因需而用,而不是因有而用)

2. 万不得已不要使用EJB(谬论:把EJB视为J2EE核心)

3. 万不得已不要采用分布式架构

4. 企业应用不要仅仅局限于J2EE技术(业务知识,.NET技术)

5. J2EE不仅仅是一个规范

6. 谨慎处理数据库通用性,数据比J2EE应用的寿命更长

7. 利用好JDBC(SQL)技术

8. 不要忽略数据库的能力

9. 简单即是美

10.有时候使用EJB的好处可能来自于无状态Bean

11.在项目启动初期就应该考虑到性能问题

12.在设计的时候考虑应用在集群环境下运行的可能性

13.好的J2EE设计来自于好的OO设计

14.使用辅助类来隐藏底层API实现

15.在web UI层采用MVC框架

J2EE框架设计成则

1. 底层设计必须着眼当前可用规范而不是未来新规范

2. 没有针对实际需求的简单例程参考价值有限

3. 对框架进行详尽的测试

4. 对代码进行详尽注释

5. 尽可能早的对风险加以解决

6. 项目启动时就确定所采用的服务器

7. 在项目早期实现自动测试和构建

8. 在项目启动时雇佣J2EE设计专家

9. 避免重复发明轮子

10.统一设计和编码风格

分享到:
评论

相关推荐

    j2ee框架技术课设报告.doc

    ### J2EE框架技术课程设计知识点汇总 #### 一、J2EE框架技术概述 - **J2EE(Java 2 Platform, Enterprise Edition)**:是Sun Microsystems为简化企业级应用开发而推出的一种标准,主要面向大型分布式网络应用。它...

    经典JAVA技术之J2EE框架结构设计

    《经典JAVA技术之J2EE框架结构设计》是吉林大学内部使用的课程资料,专为学习J2EE框架设计的学生和开发者精心编撰。这份资料深入浅出地介绍了J2EE(Java 2 Platform, Enterprise Edition)的核心概念、架构和设计...

    基于J2EE框架的个人博客系统项目毕业设计(代码及论文)

    **基于J2EE框架的个人博客系统项目毕业设计(代码及论文)** 本项目是一个采用J2EE技术栈实现的个人博客系统,旨在提供一个集文章发布、阅读、评论等功能于一体的在线平台。J2EE(Java 2 Platform, Enterprise ...

    J2EE设计模式与框架技术的应用研究

    本文探讨了J2EE设计模式与框架技术在构建Web系统中的应用,特别研究了Struts和Hibernate两大框架的作用。 在J2EE设计模式中,MVC(Model-View-Controller)模式是最核心的设计之一,它将应用程序分为三个核心组件:...

    J2EE应用框架设计与项目开发 实验指导书

    《J2EE应用框架设计与项目开发》实验指导书旨在帮助学生掌握J2EE平台上的应用框架设计与项目开发技能。本指导书分为多个实验,每个实验都设有明确的目标和任务,旨在逐步引导学生深入理解J2EE的核心技术和实践操作。...

    j2ee课程设计报告

    指导教师将根据设计内容的质量、团队协作、报告完整性和答辩表现等方面进行综合评价,以评估学生对J2EE框架开发技术的掌握程度和Web程序设计的实践能力。 总的来说,这个J2EE课程设计项目不仅要求学生具备扎实的...

    J2ee架构分析设计

    描述:针对J2EE框架分析,在这资料里做了详尽的说明 本文旨在深入探讨J2EE架构的核心概念、关键技术和应用模型,以帮助IT专业人士更好地理解J2EE框架如何支持现代企业级应用的开发。J2EE,即Java 2 Platform, ...

    基于J2EE框架的个人博客系统项目毕业设计论...

    系统设计时,选择了Java技术作为开发工具,特别是J2EE框架,因为它提供了稳定性和可扩展性。J2EE框架中的Struts作为MVC模式的实现,Hibernate用于对象关系映射,Spring则提供了事务管理和依赖注入,这些使得系统开发...

    郭克华J2EE高级框架实战教学讲义及源码

    《郭克华J2EE高级框架实战教学讲义及源码》是一份全面涵盖J2EE高级框架应用的宝贵资源,旨在帮助开发者深入理解和实践J2EE开发中的核心技术。这份资料由知名讲师郭克华精心编纂,包含了详细的讲义和配套的源代码,为...

    基于J2EE框架的大型集团企业人力资源系统的设计与实现

    本文主要探讨了如何基于J2EE框架设计并实现这样一个人力资源管理系统,旨在提升集团企业的管理效率,优化人力资源配置,实现一体化的人力资源管理。 首先,论文对当前e-HR系统的发展状况进行了概述,阐述了其在企业...

    基于J2EE框架的个人博客系统项目毕业设计

    **基于J2EE框架的个人博客系统项目毕业设计** 在当今互联网时代,个人博客系统已经成为人们分享知识、表达思想的重要平台。本项目是基于J2EE(Java 2 Platform, Enterprise Edition)框架构建的个人博客系统,旨在...

    基于J2EE框架的电力管理系统设计与开发.docx

    总结来说,基于J2EE框架的电力管理系统设计与开发,利用了J2EE的多层分布式架构和丰富的JAVA技术,实现了对电力设备的有效管理,确保了电力系统的稳定运行。这种系统不仅提高了电力公司的运营效率,也为电力行业的...

    《J2EE框架技术+–+Struts&JSF》教学大纲

    ### J2EE框架技术——Struts&JSF教学大纲解析 #### 一、课程目标与对象 本课程旨在深入理解并掌握J2EE框架技术中关键的Struts和JSF框架,具体目标包括: 1. **理解Struts框架**:熟悉Struts框架的基本概念、架构...

    基于J2EE框架的电力管理系统设计与开发.pdf

    电力管理系统基于J2EE框架进行设计时,首先需要对电力管理业务进行全面的分析,理解各种电力设备的运行、维护需求。系统通常采用多层架构,包括表现层、业务逻辑层、数据访问层等,以实现模块化和职责分离。表现层...

    基于J2EE框架的个人博客系统项目毕业设计源码

    《基于J2EE框架的个人博客系统项目毕业设计源码》是一个典型的Web应用程序开发实例,主要利用了Java的J2EE(Java 2 Platform, Enterprise Edition)框架来构建一个功能完善的个人博客系统。这个项目旨在让学生熟悉并...

    Nxjnic基于J2EE框架的个人博客系统项目毕业设计论文.doc

    总的来说,基于J2EE框架的个人博客系统项目是一个集内容创作、社交互动、数据分析于一体的综合性平台,旨在通过先进的技术手段满足用户在Web 2.0时代的表达和交流需求,同时也展现出J2EE框架在构建复杂网络应用中的...

    j2ee课程设计 论文结构

    J2EE 课程设计论文结构 J2EE 课程设计论文结构是指在 J2EE 平台上开发一个网上论坛系统的设计说明书。该论文结构主要分为六个章节,分别是论文结构摘要、网站系统设计、网站系统开发技术、系统实现、论坛系统使用...

    大学毕业论文-—基于j2ee框架的电子商务在线支付平台的设计与实现.doc

    设计与实现基于J2EE框架的电子商务在线支付平台 本文的主要内容是设计和实现一个基于J2EE框架的电子商务在线支付平台。该平台的设计和实现是为了满足电子商务的需求,提供一个安全、可靠和高效的在线支付系统。该...

    基于J2EE框架的GoogleMaps拼车网设计与实现

    本文主要探讨了基于J2EE框架的Google Maps拼车网系统的设计与实现,...其设计理念和技术方案对于其他类似系统开发具有借鉴意义,尤其在WebGIS和J2EE框架的结合上,为未来地理信息系统在交通领域的应用开辟了新的思路。

Global site tag (gtag.js) - Google Analytics