基本信息
文件名称:JavaWeb应用程序开发教程(任务驱动式)课件 第8章基于Spring的Web应用程序开发 .pptx
文件大小:5.54 MB
总页数:46 页
更新时间:2025-06-18
总字数:约1.98万字
文档摘要

模块8 基于Spring的Web应用程序开发

章节导读Spring是一个轻量级的开源框架,为Java带来了一种全新的编程思想,是为了降低企业级应用开发的复杂性而创建的,目标是简化Java企业级应用的开发和缩短开发周期。Spring以IoC和AOP两种先进技术为基础,完美地降低了企业级应用开发的复杂度、开发成本并整合了各种流行框架。Spring的最大的目标是使JavaEE开发更加容易。Spring不同于Struts、Hibernate等单层框架,它致力于以统一的、高效的方式构造整个应用系统,并将单层框架以最佳的组合糅合在一起,建立一个连贯的体系。可以说Spring是一个提供了更完善的开发环境的框架,可以为POJO提供企业级的服务。Spring最初来自RodJahnson所著的一本很有影响力的书《ExpertOne-on-OneJ2EEDesignandDevelopment》,这本书出版于2002年,其中第一次出现了Spring的一些核心思想。另外一本书《ExpertOne-on-OneJ2EEDevelopmentwithoutEJB》进一步阐述了不使用EJB开发J2EE企业级应用的一些设计思想和具体做法。2004年4月,Spring1.0正式发布。SpringFramework也经历了很多版本的变更,每个版本都有相应的调整。Spring官网地址为https://spring.io。

【问题8-1】何谓Spring?【问题8-3】何谓依赖注入(DI)?【问题8-5】何谓AOP?【问题8-7】SpringAOP的常用注解有哪些?【问题8-9】何谓DAO(数据访问对象)?【问题8-2】何谓控制反转(IoC)?【问题8-4】IoC和DI有何关系?【问题8-6】何谓SpringAOP?【问题8-8】AOP(面向方面的程序设计)与OOP(面向对象程序设计)有何区别与联系?1357924683释疑解惑

前导知识【知识8-1】Spring系统架构Spring通常指的是SpringFramework,SpringFramework是Spring生态圈中最基础的项目,是其他项目的根基。Spring系统架构是一个复杂但高度模块化的体系,其核心设计思想是简化企业级应用的开发。Spring4系统架构的主要组成部分如下。(1)核心容器(CoreContainer)。(2)数据访问(DataAccess)/集成(Integration)模块。(3)Web模块。(4)其他模块。Spring4的系统架构高度模块化并且可扩展,开发者可以根据项目需求选择相应的模块,还可以通过配置和编程进行定制。随着技术的不断发展和更新,Spring4的系统架构可能也会有所调整和优化。因此,为了获取最新和最准确的信息,建议查阅Spring的官方文档和社区资源。同时,随着后续版本的发布,Spring的架构和功能也会不断进步和完善,因此,对于更高级别的版本,其架构和功能可能有所差异。

前导知识【知识8-2】Spring的主要作用与特性Spring的主要作用是为代码“解耦”,降低代码间的耦合度,即让对象和对象(模板和模板)之间不使用代码关联,而是通过配置来说明它们的关系[在Spring中说明对象(模块)的关系]。Spring根据代码的功能特点,使用IoC降低业务对象之间的耦合度。IoC使得主业务在相互调用的过程中不用再自己维护关系了,即不用再自己创建要使用的对象了,而是由Spring容器统一管理,自动“注入”,注入即赋值。而AOP使得系统服务得到了最大程度的复用,且不用再由程序手动将系统及服务“混杂”到主业务逻辑中了,而是由Spring容器统一完成。Spring的主要特性如下。(1)轻量。(2)控制反转。(3)面向方面。(4)容器。(5)框架。

前导知识【知识8-3】Spring的优点Spring具有以下优点。(1)使J2EE开发更加容易,降低了企业级应用开发的复杂性。(2)更多地强调面向对象的设计,而不是现行的技术(如J2EE)。面向对象的设计比任何实现技术都重要。(3)面向接口编程,而不是针对类编程。Spring提供了IoC,由容器管理对象和对象的依赖关系。原来在程序代码中进行的对象创建现在由容器完成,对象之间的依赖解耦合。(4)使应用程序更加容易测试。(5)使用基本的JavaBean代替EJB,并提供更多的企业级应用功能,为JavaBean提供一个更好的应用配置框架。(6)尽量减少不必要的异常捕获。(7)支持AOP编程。通过Spring提供的AOP功能可以方便地进行面向方向的程序设计,许多不容易用传统OOP实现的功能可以通过AOP轻松实现。(8)方便集成各种优秀框架。Spring不排斥