
第11章1Spring基础·Spring概述·Spring的下载和使用·Spring的容器机制·Spring的简单应用
第11章_1 Spring基础 • Spring概述 • Spring的下载和使用 • Spring的容器机制 • Spring的简单应用

Spring概述11.1点击查看本小节知识架构Spring的下载及使用11.2Spring的容器机制11.3点击查看本小节知识架构Spring的简单应用11.4日点击查看本小节知识架构
Spring概述 ☞点击查看本小节知识架构 Spring的下载及使用 Spring的容器机制 ☞点击查看本小节知识架构 Spring的简单应用 ☞点击查看本小节知识架构

学习目标理解Spring的概理解Spring的念和优势体系结构理解理解掌握掌握Spring的掌握Spring入3核心容器门程序的编写
理解Spring的概 念和优势 1 掌握Spring入 门程序的编写 4 理解Spring的 2 体系结构 3 掌握Spring的 核心容器 学习目标

11.1Spring概述返回目录Spring简介11.1.1..11.1.2Spring的优势........11.1.3Spring功能体系11.1.4Spring子项目
11.1 Spring概述 11.1.1 Spring简介 返回目录 11.1.2 Spring的优势 11.1.3 Spring功能体系 11.1.4 Spring子项目

11.1Spring概述11.1.1Spring简介·在Spring兴起之前,Java企业级开发主要通过EJB(EnterpriseJavaBean)完成。EJB是服务器端的组件模型,由于它过于依靠EJB容器并存在缓慢、复杂等问题,因此逐渐被Spring取代:Spring是一个分层的JavaSE/EE应用的一站式轻量级开源框架,它最为核心的理念是IOC(控制反转)和AOP(面向切面编程),其中,IOC是Spring的基础,它支撑着Spring对JavaBean的管理功能,AOP是Sprin的重要特性:Spring提供了展现层SpringMVC、持久层SpringJDBC以及事务管理等一站式的企业级应用技术,除此之外,Spring目前已融入JavaEE开发的各个领域,它可以整合Java生态圈里众多的第三方框架和类库,为企业开发提供全面的基础功能支持:Spring是一个易于开发、便于测试且功能齐全的开发框架,它的核心功能适用于任何Java应用,在较长一段时期内仍将被广泛采用
11.1 Spring概述 11.1.1 Spring简介 • 在Spring兴起之前,Java企业级开发主要通过EJB (Enterprise JavaBean)完成。EJB是服务器端的组件 模型,由于它过于依靠EJB容器并存在缓慢、复杂等问题,因此逐渐被Spring取代。 • Spring是一个分层的JavaSE/EE应用的一站式轻量级开源框架,它最为核心的理念是IOC(控制反转) 和AOP(面向切面编程),其中,IOC是Spring的基础,它支撑着Spring对JavaBean的管理功能, AOP是Spring的重要特性。 • Spring提供了展现层SpringMVC、持久层Spring JDBC以及事务管理等一站式的企业级应用技术,除此 之外,Spring目前已融入JavaEE开发的各个领域,它可以整合Java生态圈里众多的第三方框架和类库, 为企业开发提供全面的基础功能支持。 • Spring是一个易于开发、便于测试且功能齐全的开发框架,它的核心功能适用于任何Java应用,在较长 一段时期内仍将被广泛采用

11.1Spring概述11.1.2Spring的优势:与其他开发框架相比,Spring具有无可比拟的优势,这主要表现在以下几个方面。1.降低耦合度,方便开发·通过IOC容器,Spring可以管理对象的生命周期、控制对象之间的依赖关系,如此一来,因硬编码造成的程序过度耦合得以避免2.支持AOP编程:通过AOP,Spring可以对程序进行权限拦截、安全监控等操作,这可以减少通过传统OOP方法带来的代码穴余和繁杂。3.支持声明式事务:在Spring中,可以直接通过Spring配置文件管理数据库事务,省去了手动编程的烦,提升了开发效率
11.1.2 Spring的优势 • 与其他开发框架相比,Spring具有无可比拟的优势,这主要表现在以下几个方面。 1. 降低耦合度,方便开发 • 通过IOC容器,Spring可以管理对象的生命周期、控制对象之间的依赖关系,如此一来,因硬编码造成 的程序过度耦合得以避免。 2. 支持AOP编程 • 通过AOP,Spring可以对程序进行权限拦截、安全监控等操作,这可以减少通过传统OOP方法带来的代 码冗余和繁杂。 3. 支持声明式事务 • 在Spring中,可以直接通过Spring配置文件管理数据库事务,省去了手动编程的烦琐,提升了开发效率。 11.1 Spring概述

11.1Spring概述11.1.2Spring的优势4.方便程序测试·Spring中集成了Junit,开发人员可以通过Junit进行单元测试。5.方便集成各种优秀框架:Spring提供了一个广阔的基础平台,它不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如MyBatis、Hibernate、Quartz等)的直接支持。6.降低JavaEEAPI的使用难度·Spring封装了JavaEE中使用难度较大的API,经过封装,这些API更容易被开发人员理解和调用
4. 方便程序测试 • Spring 中集成了Junit ,开发人员可以通过Junit进行单元测试。 5. 方便集成各种优秀框架 • Spring 提供了一个广阔的基础平台,它不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如 MyBatis、Hibernate、Quartz 等)的直接支持。 6. 降低 JavaEE API 的使用难度 • Spring封装了JavaEE 中使用难度较大的API,经过封装,这些 API 更容易被开发人员理解和调用。 11.1.2 Spring的优势 11.1 Spring概述

11.1Spring概述11.1.3Spring功能体系WebDataAccess/IntegrationSpring框架采用分层和模块的架构方式,由JDBCORM核心容器、数据访问及集成、Web、AOP等WebSocketServletOXMJMS功能构成,具体如右图所示。WebPortletTransactions图中展示了Spring的功能体系,这些功能通AOPAspectsInstrumentatiorMessaging常由Spring中的一个或多个模块联合实现。CoreContainer在实际开发中,开发人员可根据业务需求自BeansCoreSpELContent主选择所需模块,同时也可集成其他第三方框架,提升开发的针对性和效率。Test
11.1.3 Spring功能体系 • Spring框架采用分层和模块的架构方式,由 核心容器、数据访问及集成、Web、AOP等 功能构成,具体如右图所示。 Data Access/Integration JDBC ORM OXM JMS Transactions Web WebSocket Servlet Web Portlet AOP Aspects Instrumentation Messaging Core Container Beans Core Content SpEL Test • 图中展示了Spring的功能体系,这些功能通 常由Spring中的一个或多个模块联合实现。 • 在实际开发中,开发人员可根据业务需求自 主选择所需模块,同时也可集成其他第三方 框架,提升开发的针对性和效率。 11.1 Spring概述

11.1Spring概述11.1.3Spring功能体系1.核心容器(CoreContainer)核心容器(CoreContainer)在Spring的功能体系中起到支撑性作用,是其他模块实现功能的基石。核心容器包含Beans、Core、Context、SpEL四个模块,具体如下。1)Beans和Core模块:Beans和Core模块规定了创建、配置和管理Bean的方式,提供了IOC和DI功能,·BeanFactory类是Beans和Core模块的关键。2)Context模块:Context模块在Beans和Core模块基础之上扩展了功能,通过ApplicationContext接口提供上下文信息。3)SpEL模块:SpEL模块提供了一个强大的表达式语言,该语言用于在Spring运行时查询和操纵对象
1. 核心容器(Core Container) 核心容器(Core Container)在Spring的功能体系中起到支撑性作用,是其他模块实现功能的基石。 核心容器包含Beans、Core、Context、SpEL四个模块,具体如下。 1)Beans和Core模块 • Beans和Core模块规定了创建、配置和管理Bean的方式,提供了IOC和DI功能, • BeanFactory类是Beans和Core模块的关键。 2)Context模块 • Context模块在Beans和Core模块基础之上扩展了功能,通过ApplicationContext接口提供上下文信息。 3)SpEL模块 • SpEL模块提供了一个强大的表达式语言,该语言用于在Spring运行时查询和操纵对象。 11.1.3 Spring功能体系 11.1 Spring概述

11.1Spring概述11.1.3Spring功能体系2.数据访问及集成(DataAccess/Integration)数据访问及集成(DataAccess/Integration)主要用于访问和操作数据中的数据,它主要包含JDBC、ORM、OXM、JMS和Transactions模块1)JDBC模块·JDBC模块提供了JDBC抽象层,它消除了长的JDBC编码并解析数据库供应商特有的错误代码。2)ORM模块ORM模块为主流的对象关系映射API提供了集成层,这些主流的对象关系映射包括MyBatis.Hibernate和JDO等,除此之外,该模块可将对象关系映射框架与Spring提供的特性组合使用
2. 数据访问及集成(Data Access/Integration) 数据访问及集成(Data Access/Integration)主要用于访问和操作数据中的数据,它主要包含JDBC、 ORM、OXM、JMS 和Transactions模块。 1)JDBC模块 • JDBC模块提供了JDBC抽象层,它消除了冗长的JDBC编码并解析数据库供应商特有的错误代码。 2)ORM模块 • ORM模块为主流的对象关系映射API提供了集成层,这些主流的对象关系映射包括MyBatis、 Hibernate和JDO等,除此之外,该模块可将对象关系映射框架与Spring提供的特性组合使用。 11.1.3 Spring功能体系 11.1 Spring概述