`

Spring简介01

 
阅读更多

    Spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架。兴起于2003年,它主要是为了解决企业应用开发的复杂性而诞生的,框架的主要优势之一就是其分层结构,分层结构允许使用者使用哪一个组件。同时也为J2EE开发提供了集成的框架。

简单来说:Spring是一个分层的一站式的轻量级的开源框架。

  • 目的:解决企业应用开发的复杂性
  • 功能:使用基本的JavaBean代替EJB
  • 范围:任何Java应用

JavaBean介绍:

JavaBean是一种JAVA语言写成的可重用组件。他通常具有如下特点:

1.     所有的属性为private

2.     提供默认的构造方法

3.     提供getter和setter方法

4.     实现serializable接口

 

Spring的核心模块:

  • 核心容器(SpringCore):提供了Spring框架的基本功能,核心容器的主要组件是BeanFactory,他是工厂模式的实现。Bean Factory使用控制反转的模式将应用程序的配置和依赖性规范与实际的应用程序代码相分开。
  • 应用上下文(SpringContext):是一个配置文件,向Spring模块提供上下文信息。Spring上下文包含了一些企业服务,例如:JNDI、EJB、电子邮件、国际化、校验、调度等功能。
  • AOP模块(Spring AOP) :通过配置管理特性,Spring AOP模块直接将面向切面的编程功能集成到了Spring框架当中。所以,可以很容易的使Spring框架管理的任何对象都可以支持AOP。Spring的AOP模块为基于Spring的应用程序中的对象提供了事物管理功能,通过使用Spring AOP不用依赖EJB组件就可以将声明性事物管理集成到应用程序当中。
  • JDBC和DAO模块(Spring DAO):JDBC、DAO的抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商所抛出的异常信息。异常层次结构简化了错误处理,并且极大的降低了需要编写的异常处理代码数量。例如打开和关闭连接等等。SpringDAO的面向切面,JDBC的异常遵从通用的DAO异常层次结构。
  • 对象实体映射(SpringORM):Spring框架插入了若干个ORM框架,从而提供了ORM对象的关系工具。其中包括JDO、Hibernate… …所有这些都遵从Spring的通用事物和DAO异常层次结构。
  • Web模块(Spring Web):Web上下文模块建立在应用程序上下文模块之上,为基于Web的应用程序提供了上下文,所以Spring框架支持与Struts的集成。Web模块还简化了处理多部分请求以及将请求参数绑定到预对象的操作。
  • MVC模块(Spring WebMVC):Spring的MVC是一个全功能的构建Web应用程序的MVC的实现。通过策略接口,MVC框架变成为高度可配置的。MVC容纳了大量视图技术。模型来由JavaBean来构成,存放与Map当中。而视图是一个接口,负责实现模型。控制器是一个逻辑代码,是Control的实现。

Spring框架的功能可以用在任何J2EE服务器当中,大多数功能也适用于不受管理的功能

Spring的核心要点就是:支持不绑定到特定J2EE服务的可重用业务和数据的访问对象

 

Spring的优势:

  • 它定位的领域是许多其他流行的framework没有的
  • Spring是全面的和模块化的
  • 它的设计从底部帮助你编写易于测试的代码
  • Spring是潜在的一站式解决方案

 

Spring的优点:

  • 低侵入式设计,代码污染极低
  • WriteOnce, Run Anywhere
  • DI有效的降低了耦合度
  • AOP提供了通用任务的集中管理
  • ORM和DAO简化了对数据库访问
  • 高度开放性,并不强制

Spring的这些优点贯穿与表现层,业务层以及持久层

 

Spring的优点给开发带来的好处:

  • 可以有效组织中间层对象
  • 使用统一的配置文件
  • 促进良好编程习惯,减少编程代价
  • 易于单元测试
  • 使EJB成为一种备选
  • 为数据存取提供了一致的框架

Spring的特点:

  • 方便解耦,简化开发
  •  AOP编程的支持
  • 声明式事务的支持
  • 方便程序的测试
  • 方便集成各种优秀框架
  • 降低JavaEE API的使用难度
  • Spring的源码是经典学习范例

 


总结:

1.Spring带来了复杂的J2EE开发的春天,他让我们J2EE的开发变得越来越简单。

2.它的核心是轻量级的IOC容器,它的目标是为J2EE应用提供了全方位的整合框架,在Spring框架下实现多个子框架的组合,这些子框架之间可以彼此独立,也可以使用其它的框架方案加以代替

3.Spring希望为企业应用提供一站式的解决方案,Spring为企业级服务进行了进一步的封装,简化了企业级的开发。同时采用他也就意味着良好分层设计,并且保证了面向接口编程,加上他的IOC和AOP容器的优势更加方便我们后期的维护。但是,由于容器大量的使用反射机制来装配对象一定会影响性能。对于一些高并发的大型应用,我们建议还是要慎重使用。
分享到:
评论

相关推荐

    01Spring简介.md

    01Spring简介.md

    01.Spring框架简介_spring_spring发展历程_

    **Spring框架简介** Spring框架是Java开发领域中最广泛使用的轻量级框架之一,自2003年首次发布以来,它极大地推动了企业级Java应用的发展。Spring的主要目标是简化Java开发,通过提供一个全面的编程和配置模型,...

    01-spring简介-框架的概念

    01-spring简介-框架的概念Spring框架是 Java 平台的一个开源的全栈(Full-stack)应用程序框架和控制反转容器实现,一般被直接称为 Spring。该框架的一些核心功能理论上可用于任何 Java 应用,但 Spring 还为基于...

    spring-demo01-start.zip

    本教程通过"spring-demo01-start.zip"这个压缩包,将引导你逐步了解如何入门Spring框架。在这个入门案例中,我们将探讨Spring的基本概念、配置以及核心特性。 首先,Spring的核心是依赖注入(Dependency Injection...

    SPRING01.rar

    标题“SPRING01.rar”暗示了这是一个关于Spring框架的学习资源包,可能包含了Spring的配置、集成环境等信息。描述中提到的"Eclipse + Maven + Spring配置文件 + JDK1.8 + Tomcat + Mysql"则揭示了这个压缩包内的内容...

    spring-day01

    #### Spring框架简介 Spring框架是一款开源的Java平台应用框架,以其轻量级的特点被广泛应用于企业级应用开发中。Spring的核心特性包括依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented ...

    Spring-WebSocket-demo01.zip

    综上所述,`Spring-WebSocket-demo01.zip`提供的入门示例涵盖了从WebSocket配置、消息处理到客户端连接的基本操作,是学习Spring WebSocket开发的良好起点。通过这个示例,开发者能够快速理解并掌握WebSocket在...

    spring-01-ioc1.rar

    标题中的"spring-01-ioc1.rar"表明这是一个关于Spring框架中控制反转(Inversion of Control,简称IoC)的初级教程资源。Spring是Java领域广泛应用的一个轻量级开源框架,它的核心特性就是IoC,它使得应用程序的组件...

    Spring-day01(md文档+代码)

    1. **Spring简介**:Spring是一个开源框架,最初由Rod Johnson创建,目的是简化企业级Java应用的开发。它通过提供IOC(控制反转)和DI(依赖注入)来管理对象,降低了组件之间的耦合度。 2. **依赖注入**:这是...

    Spring Boot技术培训

    ##### 1.1 Spring Boot 简介 Spring Boot 是基于 Spring 平台和一系列框架的项目,旨在简化新 Spring 应用程序的初始设置和配置。Spring Boot 的目标是通过提供一种可快速构建独立、生产级别的基于 Spring 框架的...

    Berkeley CS 61a Spring 2015 - 01 Functions

    ### Berkeley CS 61A Spring 2015 - 01 Functions #### 课程概述与目标 在《Berkeley CS 61A Spring 2015》这门课程中,主要关注的是计算机科学的基础知识,特别是函数的概念及其应用。本课程由John DeNero教授...

    Spring.net中文说明

    一、Spring.NET简介 Spring.NET的核心理念是依赖注入(Dependency Injection,简称DI),这是一种设计模式,它允许开发者将对象的创建和管理分离,降低类之间的耦合度。通过这种方式,对象之间的依赖关系由外部容器...

    01-spring-boot-overview

    #### Spring Boot简介 Spring Boot是Spring家族中的一员,它极大地简化了基于Spring的应用开发过程。Spring Boot的目标是通过提供一个开箱即用的体验来减少开发过程中所需的样板代码数量,使开发者能够更加专注于...

    day01-SpringMVC入门.doc

    SpringMVC 简介及环境搭建 **A. SpringMVC 是什么** - SpringMVC 是一个基于MVC设计模式的Web层框架,用于处理HTTP请求和响应。 - 它的核心目标是简化Web开发,通过请求驱动的方式,使得开发者能够更专注于业务...

    spring2.5 -3.0 hibernate3.3 jar包说明

    #### Spring 框架简介 Spring是一个开源的应用框架,它提供了一个全面的编程模型,旨在简化Java应用程序的开发过程。Spring的核心功能包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect Oriented ...

    spring-intro:Spring 框架简介,超过 10 节课程

    Spring框架介绍========================Spring 框架简介,超过 10 节课程课程大纲S01 - Spring 简介Spring 介绍和概述三层架构 - 简短介绍和 Spring 在每一层中的作用在 webapp 中连接 Spring 基于 Spring 注解的 ...

    SpringSecurity和OAuth2实战精讲视频.zip

    01-简介 02-入门-Spring Security基本功能 03-入门-实现最简单的身份认证 04-入门-使用动态链接 05-入门-登录页面加载慢的问题 06-入门-Spring Security默认做了什么 07-入门-Spring Security底层原理 08-入门-...

    Spring学习的笔记

    chapter01 Spring简介 1 chapter02 Spring的IoC 2 chapter03 Spring的AOP 5 chapter04 Spring对持久层的支持 11 chapter05 Spring对事务的支持 14 chapter06 SSH整合 15

Global site tag (gtag.js) - Google Analytics