从开始学Java Web到现在,使用的J2EE架构一步一步的在改变,从最简单的到越来越复杂,刚开始都是完全就照着每个架构的形式去开发项目,很少自己会想为什么用这样的架构好?好在哪里?现在学了这么久,也做了一些项目,回过头来仔细去思考这一个一个的架构,顿时发现了其中的道理。当你使用一种架构时,发现架构存在某个明显不足的地方,这时候,就应该去思考有什么办法去解决,这样子不断改善,也就使架构不断的改善升级。
什么是J2EE架构?
J2EE架构就是我们开发企业项目系统时使用基于J2EE技术构建的软件架构,相当于给系统定了个外型,剩下的只要按照这个外型去具体实现它的功能。这样做的目的就是为了提升开发的效率以及一个好的架构也会大大提升我们软件的质量。
(一)一层架构模式
一层架构模式是最简单的方法,就是直接使用JSP进行所有功能的开发,JSP既负责显示结果与用户交互,并且也负责跳转控制、逻辑业务的处理。如下图所示:
这种模式的好处就是直接容易理解,逻辑简单,开发速度快,但当功能复杂的时候,页面就会被塞很多java代码,如JDBC代码,逻辑代码,可读性会很差,并且代码无法重用。
(二)两层架构模式 Model 1
为了解决上一个架构存在的问题:可读性差,代码无法重用。现在我们不要忘了Java有封装的特性,而且我们页面可读性差就是因为页面中插入了大量的java代码,而且当我们写多了一层架构的项目时会发现,在页面中的java代码很多都是相同的重复代码,都为了实现某一个功能,如JDBC代码,所以现在我们可以将这些Java代码抽取出来放在JavaBean(其实就是个java类)中,封装成一个一个的业务方法,供JSP页面来调用,如果需要实现相同功能的只需要写一遍代码就可以多次调用,也就是代码可重用性也相对提高了。
这种模式下依然存在着很明显的缺点:jsp页面除了显示内容外还要负责控制页面跳转,当项目复杂时,页面与页面之间的流向会变得混乱,当改动某一页面时可能影响到与之相关的很多页面;还有就是程序逻辑代码的开发与页面设计纠缠在一起,这样既不便于分工合作,也不利于代码的重用。
(三)三层架构模式 Model 2(MVC模式)
为了解决Model 1的缺点,而Model 1的缺点就在与页面设计还没有与程序逻辑代码真正分离,所以我们要继续想办法把他们分离开,JSP用来显示页面,这就需要有一个专门来负责接收页面请求并将处理结果返回给合适的页面。它就充当了一个“控制器”(Controller),这个控制器一般就由Servlet来实现,因为Servlet的特性恰好能完美实现这样的效果。
这样一来,JSP变成一个单纯完成显示内容的显示层(Viewer),Servlet作为控制层(Controller),而被我们已经独立出来的事务逻辑(JavaBean),称为Model层,就构成了MVC模式,该模式至今被广泛应用,因为为我们的开发与维护提供了巨大的便利。
(四) 多层架构模式
MVC模式虽然已经很经典,但在实际项目开发中,我们就会发现,在我们的Model层中存在大量的重复代码,就是JDBC代码,可以对它继续拆分、拆分成服务层(Service)与数据操作(DAO),服务层专门根据业务需要,调用数据底层对数据库进行操作,数据操作负责对数据库进行操作;由于这两层之间会涉及到数据的传递,数据量可能会比较多,所以在他们中间加上一个专门存储数据库的持久对象的存储对象(DTO)
J2EE的多层架构中的每一层还可以使用一些开源框架进行组合,现在比较流行的就是Struts、Spring、Hibernate等框架,他们都各自作用在某些层,但都是基于MVC这个基础架构来的,所以掌握好MVC很重要。
相关推荐
《J2EE架构师手册:如何成为一位成功的J2EE架构》是一本旨在帮助读者快速提升J2EE架构技能的专业指南。J2EE(Java 2 Platform, Enterprise Edition)是Oracle公司提供的一个用于构建企业级分布式应用的平台,它包含...
《J2EE架构师手册》是一本专门为J2EE平台上的高级软件开发人员和架构师编写的详尽指南。作为J2EE领域的专业参考资料,它深入探讨了如何设计、实现和优化复杂的企业级应用程序。J2EE(Java 2 Platform, Enterprise ...
《J2EE架构师认证指南》是一份专为有志于成为J2EE架构师的专业人士准备的参考资料。这份指南涵盖了J2EE平台的核心概念、技术框架以及成为一名优秀架构师所需掌握的关键技能。J2EE(Java 2 Platform, Enterprise ...
《J2EE架构师手册》是一本专门为J2EE架构师量身打造的专业指南,它涵盖了J2EE技术栈的方方面面,旨在帮助读者全面理解和掌握J2EE平台的设计与实施。J2EE(Java 2 Platform, Enterprise Edition)是Oracle公司推出的...
《J2EE架构师认证指南》是一本针对Java企业级应用开发高级技术的教程,旨在帮助读者掌握J2EE架构设计的核心理念与实践技巧。在深入理解J2EE架构的同时,该指南也会涵盖相关的工具使用,例如在描述中提到的源码分析和...
《J2EE架构师手册》是一本专门为那些希望在J2EE应用领域成为成功技术架构师的专业人士编写的指南。J2EE(Java 2 Platform, Enterprise Edition)是Oracle公司推出的用于构建企业级分布式应用程序的平台,它包含了...
通过这些步骤,开发人员不仅可以理解J2EE架构的关键概念,还能根据具体的业务需求调整和优化开发流程。每个步骤都是相互关联的,共同确保了最终产品的质量和适应性。对于希望在J2EE平台上构建复杂系统的团队来说,...
J2EE 体系架构介绍 J2EE(Java 2 Platform, Enterprise Edition)是一种用于开发企业级应用程序的Java平台。J2EE 体系架构是指基于 J2EE 平台所构建的应用程序架构。 HandsOnJ2EE 体系架构介绍 J2EE 体系架构是...
《J2EE架构师手册》是一本专门为J2EE开发者,特别是那些志在成为架构师的读者准备的宝贵资源。这本书深入浅出地探讨了J2EE平台的核心技术和最佳实践,旨在帮助读者从宏观和微观两个层面理解并设计出高效、可扩展且...
**J2EE架构与应用课程设计** 在信息技术领域,Java企业版(Java 2 Platform, Enterprise Edition,简称J2EE)是一种广泛使用的多层应用程序框架,专为开发和部署分布式Web应用程序而设计。J2EE提供了丰富的服务和...
**J2EE架构的读书报告** 在探讨J2EE架构的读书报告中,我们主要聚焦于J2EE平台上的一个核心设计模式——Model-View-Controller(MVC)模式。这个模式是软件开发中用于创建用户界面的重要工具,特别是在大型企业级...
《基于J2EE架构的人事管理系统需求分析及框架的实现》 在当今信息化时代,人事管理系统作为企业管理的重要组成部分,对于提升工作效率、优化人力资源配置具有重大意义。本文将深入探讨基于J2EE架构的人事管理系统的...
本文旨在深入探讨J2EE架构的核心概念、关键技术和应用模型,以帮助IT专业人士更好地理解J2EE框架如何支持现代企业级应用的开发。J2EE,即Java 2 Platform, Enterprise Edition,是一个广泛应用于构建可扩展、高性能...
【基于J2EE架构的敏捷开发平台】是一个旨在解决传统软件开发中问题的高效开发解决方案。传统的开发方式通常采用大棒集成,即在项目后期进行系统集成,这可能导致集成周期长,集成过程中发现的缺陷多。敏捷开发方法则...
《J2EE架构师手册》是一本专门为有志于深入理解并掌握J2EE技术的高级开发者和架构师量身定制的指南。本书的核心目的是帮助读者从高层次、全面的角度理解和应用J2EE技术,揭示其背后的"道",即技术的本质和原则。书中...
《J2EE架构师手册》和《J2EE OA项目开发日记》是两份非常重要的IT资源,专门针对Java企业级应用开发领域的高级技术人员,尤其是对J2EE架构师而言。这两份资料深入探讨了J2EE技术栈,以及在实际OA(办公自动化)项目...
### 基于Struts、Hibernate与Spring的J2EE架构研究 #### 摘要与背景 本文探讨了如何利用Struts、Hibernate与Spring这三个开源框架构建一个强大的、高效的且易于扩展的J2EE分层架构。MVC(Model-View-Controller)...