Spring是一个综合的框架,包含了对DAO,Transaction、MVC、Remote,Security等相关技术的集成和支持
第一部分:对Spring进行概况的介绍:What is Spring?Features of Spring? why use Spring? What Spring can do?
What is Spring?
Spring is an open source framework,created by RodJohnson and described in his book Exper One-on-one:J2EE Design and Development;
Spring is a lightweight dependency injection and aspect-oriented container and framework.
Spring能够减少J2EE开发的复杂性,它提供了基于JavaBean的声明式编程,而之前,我们只能对Servlet、jsp、和EJB等进行声明式应用。
所谓的声明式编程,指的是通过配置XML或者使用annotation从而完成某些工作,例如Hibernate、Servlet等。
The Features of Spring
1.Lightweight:Spring is lightweight in terms of both size and overhead
2.Dependency Injection:Spring promotes loose couping through a technique known ad DI,and this also called IOC.
3.Aspect-oriented:separate application bussiness logic from system services
4.Container:Spring manages the lifecycle and configuration of application objects
5.framework
Spring对大量的企业级服务做了再一次的封装,简化了API,不用考虑细节问题。
Why use Spring?
1.Wiring of components (Dependency Injection)
Promotes/simplifies decoupling,design to interfaces ,TDD.
2.Declarative programming without J2EE
Easily configured aspects,esp,transaction support
3.Simplify use of popular technologies
Abstractions insulate application from specifics,eliminate redunadant code,and handle common error conditions.
Underlying technology specifics still accessible(closures)
Spring 除了提供上述的IOC和AOP之外,同时能够简化常用技术的使用,例如提供了对ORM和JDBC等数据访问方案的支持,提供了对MVC的集成,提供了远程访问解决方案的集成等
Spring包含了众多的模块,除了最基本的Spring core,Spring context和Spring AOP之外,其他模块的功能可以选择使用,也就是说,虽然Spring是一个一站式的解决方案,但是用户可以选择使用Spring中的某些功能,例如不使用Spring MVC ,而选择Struts MVC。
Spring's modules
根据上面的图形,我们很容易的看出spring的模块是由哪些组成的。现在,我们来详细的看看spring的各个模块
1.The core container
Spring's core container contains the BeanFactory,which is the fundamental Spring container and the basis on whick Spring's DI is bassed.
2.Application context module
This module extends the concept of BeanFactory.
3.AOP module
Spring provides rich support for aspect-oriented programming in its AOP module
4.DAO module
This module abstracts away the boilerplate code so that you can keep your database code clean and simple.
5.ORM integration module
Spring's ORM support builds on the DAO support,providing a convenient way to build DAOS for several ORM solutions.
6.Spring MVC framework
7.Remoting
Spring's remoting support enables you to expose the functionally of your Java objects as remote objects.
Serveral remoting options are available ,including RMI,Hessian,Burlap,JAX-RPC and Spring's own HTTP invoker
Spring 除了能够集成RMI、Hessian等远程解决方案,并提供了对JAX-RPC以及JAX-WS的支持
spring可以与很多已有技术集成使用,例如:Struts+spring+hibernate
- 大小: 97.2 KB
分享到:
相关推荐
1. **Core Container**:这是Spring的基础,包括Core和Beans模块,它们提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)的基础。Core模块提供了ApplicationContext...
Spring框架是Java开发中不可或缺的一部分,它为构建高效、可测试和可维护的应用程序提供了全面的基础设施。在本文中,我们将深入探讨Spring框架的5.3.9版本,包括其核心特性、文档、库和XML架构。 首先,Spring ...
标题中的"spring-cglib-repack-3.2.5.jar"和"spring-objenesis-repack-2.6.jar"是两个与Spring框架相关的库文件,它们主要用于Spring框架的内部实现,尤其是针对Java对象的创建和代理机制。下面将详细解释这两个库的...
标题中的“Spring-session2整合spring5+redis”指的是在Spring框架的第五个主要版本(Spring 5)中,集成Spring Session 2与Redis数据库来管理Web应用的会话(Session)。Spring Session是一个开源项目,旨在提供一...
Spring Framework的核心特性包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, AOP)、模型-视图-控制器(Model-View-Controller, MVC)架构模式,以及对Java EE标准和第三方...
在Java开发领域,Spring框架是不可或缺的一个部分,它为构建企业级应用提供了强大的支持。而`spring-cglib-repack-3.2.5.jar`和`spring-objenesis-repack-2.6.jar`这两个文件是Spring框架中两个重要的依赖包,它们...
在Java编程领域,网络通信是不可或缺的一部分,而发送电子邮件作为一种常见的网络通信方式,常常被用于业务通知、系统报警等场景。本教程将聚焦于如何利用Spring框架进行邮件编程,为你的应用程序添加邮件发送功能。...
在Web开发领域,Spring MVC是Spring Framework的一部分,提供了一个强大的MVC(Model-View-Controller)架构。它负责接收HTTP请求,处理业务逻辑,更新模型数据,并将结果呈现给视图。Spring MVC的松耦合设计使得...
Spring Framework 是一个开源的Java平台,它为构建企业级应用提供了全面的编程和配置模型。这个框架的核心特性是依赖注入(Dependency Injection,DI),用于管理对象的生命周期和配置。Spring 框架的设计目的是使...
Spring框架是Java应用程序开发中的一个核心组件,而Spring Context模块是Spring框架的核心部分。Context Support提供了对多种第三方库的集成,例如邮件服务、定时任务、缓存管理和JMS(Java消息服务)等。4.2.2版本...
Spring框架是Java开发中不可或缺的一部分,它提供了丰富的功能来简化企业级应用的开发。在给定的文件信息中,我们看到两个重要的库:"spring-cglib-repack-3.2.5.jar" 和 "spring-objenesis-repack-2.5.1.jar"。这些...
在4.1.9.RELEASE中,对Mockito等第三方测试库的集成更加紧密,使得编写测试用例变得更加简单高效。 6. **Maven和Gradle集成**:4.1.9.RELEASE版本可以轻松地与构建工具Maven或Gradle集成,提供了一组完整的Maven...
1. **Spring框架**:Spring是一个广泛使用的开源Java框架,主要用于企业级应用开发。它提供了全面的基础设施支持,包括依赖注入(Dependency Injection,DI)、面向切面编程(Aspect-Oriented Programming,AOP)、...
Spring Security OAuth2是一个广泛使用的Java库,用于在Spring应用程序中实现OAuth2协议,提供安全授权服务。OAuth2是一种授权框架,允许第三方应用在用户许可的情况下访问其私有资源,如在社交媒体上的数据。2.0.3....
- **快速入门**:介绍如何设置Spring环境,创建第一个Spring项目,并解释了基本的配置文件结构。 - **IoC容器**:深入解析IoC容器的工作原理,包括Bean的定义、实例化、初始化和销毁,以及Bean之间的依赖关系。 - ...
1. **AOP(面向切面编程)支持**:Spring 提供了强大的 AOP 模块,允许开发者定义方法拦截器和切点表达式,实现代码的解耦和模块化。在3.2.0版本中,AOP模块进一步优化了代理的创建和性能。 2. **IoC(控制反转)...
Spring 4.x系列是Spring的一个重要升级,主要提升了性能,增加了对Java 8的支持,并引入了反应式编程的支持。4.2.4版本修复了一些已知问题,增强了稳定性。在这个版本中,Spring提供了对WebSocket的全面支持,改进了...
Spring框架是一个开源的应用框架,它以IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)为核心理念,提供了一个全面的企业级应用程序开发解决方案,包括事务管理、数据...
1. **Spring Tool Suite (STS)**:Spring Tool Suite是Spring社区提供的一个免费的开发工具集,它提供了对Spring框架的深度支持。STS包含了Eclipse IDE的所有功能,并且扩展了诸如Spring Roo、Spring XD、Spring ...
2. **动态日志实现**:在运行时,Commons Logging会自动检测可用的日志实现,并使用找到的第一个。这对于部署在不同环境下的应用非常有用,因为可以根据环境需求调整日志实现。 3. **配置灵活性**:尽管Commons ...