2022年JAVAWEB开发三大框架整理 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年JAVAWEB开发三大框架整理 .pdf》由会员分享,可在线阅读,更多相关《2022年JAVAWEB开发三大框架整理 .pdf(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、中移动杭州研究院Java web开发三大框架整理报告Javaweb 开发三大框架整理目 录1引言 .12 JavaWeb 开发三大框架 .22.1 Struts框架. 22.1.1Struts框架概述 . 22.1.2Struts2 处理流程 . 32.1.3Struts框架的组件分析 . 4名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 17 页 - - - - - - - - - 12.2 Hibernate框架.62.2.1Hibernate 工作原理和工作流程 .
2、 62.2.2Hibernate框架的组件分析 . 72.2.3Hibernate核心接口 . 82.2.4Hibernate缓存管理 . 82.2.5Hibernate框架优势 . 92.3 Spring 框架.92.3.1Spring 框架模块 . 102.3.2控制反转( IoC) 和依赖注入( DI).112.3.3面相切面编程( AOP).122.3.4Spring 框架优势 . 123 SSH 框架整合 .123.1 整合理念 .123.2整合方案 .143.2.1Spring 与 Struts 的集成 .143.2.2Spring 与 Hibernate的集成 . 153.2.3
3、 系统分析 .154 小结.161引言随着计算机网络技术的日益普及, 基于Java 的Web技术也得到了广泛的应用。然而,利用 Java 进行Web应用程序的软件架构非常复杂,这在很大程度上限制了Web系统的开发效率, 因此轻量级 J2EE框架应运而生。 优秀的轻量级 J2EE框架不仅保留了传统 J2EE框架良好的可扩展性、可维护性等特点,还具有开发效率高、各层无缝集成等优点。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 17 页 - - - - - - - - - 2
4、Web框架是开发者在使用某种语言编写Web应用服务端时关于架构的最佳实践。所谓的三层开发就是将系统的整个业务应用划分为“表示层业务逻辑层数据访问层”,这样有利于系统的开发、维护、部署和扩展,分层是为了实现“高内聚、 低耦合”。 三层体系将业务规则、 数据访问及合法性校验等工作放在业务逻辑层处理。客户端不直接与数据库交互, 而是通过组件与中间层建立连接,再由中间层与数据库交互。本报告探讨现在主流一种轻量级J2EE架构,即SSH(Struts+Spring +Hibernate)框架,并对各层之间的整合技术进行研究。 首先,分析了 Struts、 Spring和Hibernate三种框架和各自的特
5、点;其次,阐述了它们整合的理念,选取了一种比现有SSH框架更加合理有效的整合方案,使其各层能够无缝集成、 有机整合,最大限度地实现SSH 框架的高内聚低耦合的特点。2 Java Web 开发三大框架2.1 Struts 框架2.1.1Struts 框架概述Struts是一个基于 MVC( Model-View -Controller)模式的应用架构开源框架,采用Servlet和JSP 技术实现,它减弱了业务逻辑接口和数据接口之间的耦合,为开发人员节约了时间。 其中Struts的控制文件 struts-config. xml、 Action 和ActionServlet 实现 MVC 的控制器,
6、JavaBean 或者EJB 完成MVC 的模型部分, JSP 页面承担MVC的视图组件,而且所有的控制逻辑都是由struts-config.xml 配置文件来完成。 Struts把Servlet、JSP 、自定义标签和信息资源 (messageresources) 整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC 模式,极大的节省了时间。在使用 Struts框架应该遵守以下原则:尽量使用 Struts 标签,避免嵌入Java代码;避免在视图层处理对数据库的访问。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -
7、 - - 名师精心整理 - - - - - - - 第 3 页,共 17 页 - - - - - - - - - 32.1.2Struts2 处理流程当用户端的 Http请求到达时, Struts2 处理流程如图 2-1所示图2-1 Struts2处理流程一个客户端请求在 Struts2 框架中的处理大概分为以下几个步骤:客户端提交一个( Http Servlet Request )请求;请求被提交到一系列 (主要是 3 层)的过滤器(Filter) ,如 Action ContextCleanUp、Filter Dispatcher等。注意:这里是有顺序的,先 Action ContextC
8、leanUp ,再其他过滤器( Other Filters、SiteMesh 等) ,最后到 FilterDispatcher;Filter Dispatcher是控制器的核心,就是MVC 的 Struts 2 实现中控制层(Controller)的核心;Filter Dispatcher询问 Action Mapper是否需要调用某个Action 来处理这个(Http Servlet Request )请求,如果 Action Mapper 决定需要调用某个Action,Filter Dispatcher则把请求的处理交给Action Proxy;Action Proxy 通过 Config
9、uration Manager (struts.xml) 询问框架的配置文件,找到需要调用的 Action 类;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 17 页 - - - - - - - - - 4Action Proxy 创建一个 Action Invocation 实例,同时 Action Invocation 通过代理模式调用 Action。但在调用之前, Action Invocation 会根据配置加载Action 相关的所有 Interceptor(
10、拦截器);一旦 Action 执行完毕,Action Invocation 负责根据 struts.xml 中的配置找到对应的返回结果 result,最后将该 result 通过(Http ServletResponse )请求返回给客户端。2.1.3Struts 框架的组件分析(1) Struts 2 配置文件Struts2 配置文件是用户请求( View)和业务逻辑模块( Model))Action 之间联系的桥梁 , 可以通过修改 Struts2 的配置文件来快速适应业务需求, 它是整个Struts2 的精髓之一。 Struts 2 框架配置文件分为XML文件和属性资源文件两种。web.
11、xml 对 web应用中一些初始信息进行了配置。 web.xml 可以配置过滤器用于同时拦截多个请求的URL 。除此之外 web.xml 还可以用来配 的会话时间、欢迎页、错误页、监听器、控制器等等。struts.xml 文件主要用来配置Action 和 Http 请求的对应关系,以及配置逻辑视图和物理视图资源的对应关系。struts.xml文件中包含了 Action 的定义以及Action 的返回值对应的视图资源、命名空间等信息。此外, 用户也可以定义自己的 XML文件, 然后通过 include 指令将其包含到struts.xml 文件中。另一类配置文件是属性资源文件。资源文件中一般采用固
12、定的Key -Value 形式, 用于定义 Struts2 全局或者局部的资源数据。例如定义国际化、开发模式等信息。(2) Struts 2 控制器Struts2的控制器组建是 Struts 2框架的核心,事实上所有MVC框架都是以控制器组件为核心的。正如前面提到的,Struts2的控制器由两个部分组成:FilterDispatcher和业务控制器 Action。前者由框架提供,负责拦截所有的用户请求。Filter Dispatcher负责根据用户提交的 URL和struts.xml中的配置,来选择合适的 Action,让这个Action来处理用户的请求。 Filter Dispatcher其
13、实是一个过滤器 Filter名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 17 页 - - - - - - - - - 5(Servlet规范中的一种 web组件) ,只需要在 web.xml文件中配置即可。 FilterDispatcher充分体现了 J2EE核心设计模式中的前端控制器模式。业务控制器 ActionStruts2框架为用户提供了一个名为Action Support的接口。该接口定义SUCCESS 、ERROR、INPUT、LOGIN 、NONE五个静态
14、的字符串和一个execute方法, 用户在编写自己的 Action时只要实现该接口并重写其中的execute 方法, 将所要实现的业务逻辑在该方法中处理就行了, 当调用 Action时,Struts 2框架会自调用execute 方法来完成所需的业务逻辑处理。 而且用户亦可编辑自己的函数并通过Struts2框架调用实现。实际上 , 在Struts2中起作用的业务逻辑并不是用户自定义的Action , 而是系统生成的 Action代理, 只不过 Action代理以用户定义的 Action为目标。(3) Struts2 拦截器拦截器( Interceptor)是Struts 2中的重要组成部分,
15、Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的。 拦截器是 AOP的一种实现。使用拦截器可以给开发过程带来很多好处:可以将大问题分解成多个小问题以便于处理,使每个Action更专注于处理自己的功能。 Struts2拦截器(Interceptor Stack)就是将拦截器按一定的顺序联结成一条链。图2-2为拦截器功能图。 在访问被拦截的方法或字段时,Struts2 拦截器链中的拦截器就会按其之前定义的顺序被调用。Struts2拦截器的实现原理相对简单,当请求 struts2的action时,Struts 2会查找配
16、置文件,并根据其配置实例化相对的 拦截器对象,然后串成一个列表,最后一个一个地调用列表中的拦截器。图2-2 拦截器功能图(4) Struts2 标签库名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 17 页 - - - - - - - - - 6Struts2的标签库也是 Struts2的重要组成部分, Struts2的标签库提供了非常丰富的功能, 这些标签不仅提供了表现层数据处理,而且还提供了基本的流程控制功能,还提供了国际化、 Ajax支持等功能。使用标签,开发者可以
17、最大限度地减少页面代码的书写。(5)Struts2框架优势Struts2框架( MVC 框架)的优势如下:实现了 MVC 模式,层次结构清晰, 使程序员只需关注业务逻辑的实现;丰富的标签库,大大提高了开发的效率;Struts2提供丰富的拦截器实现;通过配置文件,就可以掌握整个系统各个部分之间的关系;异常处理机制,只需在配置文件中配置异常的映射,即可对异常做相应的处理。2.2 Hibernate框架Hibernate是数据持久层的一个轻量级框架, 它对 JDBC进行了非常轻量级的对象封装,使得 Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate 可以应用在任何使用 JD
18、BC的场合,既可以在 Java的客户端程序使用,也可以在 Servlet/JSP 的Web 应用中使用,并且 Hibernate是一个开源的 orm(objectrelationsmapping)框架,提供了查询获取数据的方法,用面向对象的思想来操作数据库,节省了我们开发处理数据的时间。目前使用较多且较稳定的版本是Hibernate3 。2.2.1Hibernate工作原理和工作流程图2-3展示了 Hibernate 的工作原理,从该图中很清楚地了解到Hibernate 框架是在物理数据库之上利用一些配置文件如hibernate.cfg.xml 文件、 XMLMapping (映射文件)等来为
19、应用系统提供数据持久化方面的服务,同时达到将应用系统的持久层与不同的物理数据库系统相互隔离开的目的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 17 页 - - - - - - - - - 7图2-3 Hibernate的工作原理Hibernate工作流程:读取并解析配置文件;Configuration负责读取并创建映射信息,创建session factory;SessionFactory负责创建 session ;Transaction负责开启事物 Transact
20、ion;Query负责执行持久化操作;Transaction负责提交实物;关闭 session 和session factory。2.2.2Hibernate 框架的组件分析(1) Hibernate核心文件Hibernate核心文件主要包括两种类型文件:Hibernate的配置文件和映射文件。Hibernate的配置文件 hibernate.cfg.xml 可以配置 JDBC的连接属性和列出所有的映射文件,对 C3P0连接池提供了内嵌支持,还可以通过JNDI建立数据源,建立与数据库的连接,同时该文件可以对Hibernate的二级缓存进行管理,可以到动态加载和卸载。映射文件用于向 Hibern
21、ate提供将对象持久化到关系数据库中的相关信息,将持久化类与数据库表之间建立起映射。这意味着映射文档是按照持久化类的定义来创建的,而不是表的定义。这个xml 文件默认名为* .hbm.xml。根据映射文件,Hibernate可以生成足够的信息以产生所有SQL 语句,即插入、更新、删除和查询所需要的 SQL语句。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 17 页 - - - - - - - - - 82.2.3Hibernate 核心接口Hibernate3 共有 5
22、个核心接口和1个核心类,分别是Session 接口、 SessionFactory 接口、 Transaction接口、 Query 接口、 Criteria 接口和 Configuration 类。Session 接口Session 接口是 Hibernate 中使用最广泛的接口, 主要用于对数据的增、 删、改、查等操作。而这个 Session 对象是非线程安全的,不能被多个线程共享。SessionFactory 接口一个SessionFactory 对应一个数据存储源,也就是一个数据库对应一个SessionFactory。SessionFactory 负责创建 Session 对象,并且是
23、线程安全的,可以被多个线程共享。Transaction 接口Transaction 接口是 Hibernate的事务接口,负责处理与事务相关的操作。它是一个可选的应用程序编程接口,开发人员也可以选择自己设计编写底层事务的处理代码。Query 接口Query 接口是 Hibernate 的查询接口,负责执行数据库的各种查询。它提供了结构化的 SQL和面向对象的 HQL两种查询方式。Criteria 接口Criteria 接口和 Query接口非常类似,它允许创建并执行面向对象方式的查询,而且更擅长于执行动态查询。Configuration类Configuration 类负责配置并引导 Hiber
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年JAVAWEB开发三大框架整理 2022 JAVAWEB 开发 框架 整理
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内