`
jiagou
  • 浏览: 2595257 次
文章分类
社区版块
存档分类
最新评论

为什么我们要用Spring?

 
阅读更多

在之前的文章说说java反射(2)反射的价值我们对java反射的内容有了一定的了解,并且通过反射机制做了一个简单的框架,也算是对于Spring框架的铺垫.接下来了解一下我们使用Spring框架的意义.

Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。用一句话来描述Spring就是:Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。


loC(控制反转)是Spring的核心本来是由应用程序管理的对象之间的依赖关系,现在交给了容器管理,这就叫控制反转,即交给了loC容器,SPring的loC容器主要使用Dl方式实现的。不需要主动查找,对象的查找,定位和创建全部由容器管理.

可以把Spring当做是一个大工厂,它可以对对象的创建进行控制.提供一个IOC容器,可以很好的管理对象的依赖关系.举一个简单的例子,例如在业务逻辑中 UsermanagerUserDao,需要使用到主动查找.但是我们通过Spring我们使用Ioc容器不是用程序员创建对象,而是由IOC进行定位对象,然后创建对象.


Connection的管理,以前是手动管理,后来是在动态代理中,也是自己管理,但是现在用Spring就不需要自己管理,而是用Spring进行管理.

Spring可以对Hibernate中的Session进行管理.

事务,日志的独立管理.

提供声明式服务AOP.底层是JDK的动态代理.直接配置,不需要在代码中进行编写.

它能够更好的让我们来使用HibernateStruts.

Spring可以使你能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。


计算机生成了可选文字:DAOORMWebSpringJDBCT阳nsaCtionman刁g6m6ntHib6rn刁t6JPATOpLinkJDOOJB旧atisJEEJMXJMSJCARemotingEJBSEmsi!AOPSp而ngWebMVCFrameworkIntegrationStrU吐SWebW0rkTapes吐ryJSFRi山ViewSupportJSPSVeloc仰FreeM8rkerPOFJasperReportSEXCe.SpringPortletMVCSpringAOPAspectJintegrationCOr6The10CCOntalner

以上是Spring的整个框架图,下一篇文章将会通过一个例子来演示一下如何使用Spring.



分享到:
评论

相关推荐

    我们为什么要使用SpringCloud?

    在详细的了解SpringCloud中所使用的各个组件之前,我们先了解下微服务框架的前世今生。在网站开发的前期,项目面临的流量相对较少,单一应用可以实现我们所需要的功能,从而减少开发、部署和维护的难度。这种用于...

    Spring(一)为什么要使用spring

    首先,我们需要理解为什么我们需要Spring。在传统的Java EE开发中,对象之间的依赖关系通常是硬编码的,即一个类直接创建另一个类的实例。这种做法导致了几个问题: 1. **紧耦合**:当一个类依赖于另一个类的具体...

    我们为什么采用Spring技术栈?.

    我们为什么采用Spring技术栈?

    What’s Spring?

    **为什么选择Spring?** Spring框架提供了多种集成其他技术的方式,例如: 1. **ORM集成**:Spring支持多种对象关系映射(ORM)框架,如Hibernate、JPA(Java Persistence API)、iBatis、JDO(Java Data Objects...

    有了 Spring Boot,为什么还要学 Spring MVC ?.pdf

    首先, Spring Boot是现在比较流行的框架,可以实现快速开发,包括我自己也在用它开发项目。其优点是简化了 Spring相关组件的配置,实现自动配置,降低了项目搭建的复杂度,使开发变得更加简便,从而提升开发效率。 ...

    Spring--1.Spring ?及搭建环境

    要开始使用 Spring,首先需要搭建开发环境。以下是一般步骤: 1. **安装 Java:** 确保你的计算机上安装了 Java 开发工具包(JDK),版本至少为 8 或更高。 2. **集成开发环境(IDE):** 可选择 Eclipse、...

    Spring面试题.zip

    1、什么是 Spring 框架?Spring 框架有哪些主要模块? 2、使用 Spring 框架能带来哪些好处? 3、什么是控制反转(IOC)?什么是依赖注入? 4、请解释下 Spring 框架中的 IoC? 5、BeanFactory 和 ApplicationContext ...

    Spring Boot整合Spring Batch,实现批处理

    例如,我们可以使用JDBCItemReader来读取数据库中的数据,自定义ItemProcessor进行业务逻辑处理,然后用JdbcPagingItemWriter将结果写回数据库。 5. **启动作业**:在Spring Boot的主类或者配置类中,使用`...

    spring v3.2源码

    spring3.2的源代码,至于为什么要下载spring3.2的源代码呢? 个人觉得spring3.2的源代码比较好编译,没啥脾气,像我之前下载的spring的最新版本源代码,还有spring4.0的源代码,不论是使用jdk1.6还是1.7甚至是1.8编译...

    Spring Integration + Spring WS 整合

    这个 gateway 允许我们将 Web 服务和 Spring Integration 集成在一起,使得我们可以使用 Spring Integration 来调用 Web 服务。 在这个 demo 中,我们使用了 Spring Integration 的 ws-outbound-gateway 来调用 ...

    字节码生成:为什么Spring技术很强大?.pdf

    字节码生成:为什么Spring技术很强大?

    eclipse整合spring插件

    Eclipse 是一款强大的集成开发环境(IDE),广泛用于Java应用程序的开发。然而,它也支持多种其他编程语言和框架,...通过上述步骤,我们可以轻松地实现这一整合,享受到Spring IDE带来的各种便利功能,提高开发效率。

    spring_in_action-sixth-edition.pdf

    要初始化 Spring 应用程序,需要使用 Spring Tool Suite 初始化 Spring 项目,然后检查 Spring 项目结构。Spring 项目结构主要包括配置文件、Java 类文件和资源文件等。 3. 编写 Spring 应用程序 编写 Spring 应用...

    spring微服务架构:使用spring cloud构建微服务-脑图

    spring团队对新一代软件开发的思索。 为什么软件开发是spring boot? 为什么软件开发是spring cloud? 如何使用spring cloud搭建微服务。

    Spring详细学习资料下载

    1 什么是spring ? Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. spring的设计思想是,单例模式和工厂模式 2 spring的四大特点...

    Spring Boot 实战开发2022年

    │ 开篇词 从零开始:为什么要学习 Spring Boot?.mp4 │ 01 家族生态:如何正确理解 Spring 家族的技术体系?.mp4 │ 02 案例驱动:如何剖析一个 Spring Web 应用程序?.mp4 │ 03 多维配置:如何使用 Spring ...

    SpringBatch+Spring+Mybatis+MySql (spring batch 使用jar)

    Spring Batch以POJO和大家熟知的Spring框架为基础,使开发者更容易的访问和利用企业级服务。Spring Batch可以提供大量的,可重复的数据处理功能,包括日志记录/跟踪,事务管理,作业处理统计工作重新启动、跳过,和...

    spring笔试题选择和简答题和springboot+cloud选择题和简答题

    题目 4: 在 Spring Boot 中,在 yml 文件中配置属性,那么我们在 Controller 中可以使用什么来获取? 答:在 Spring Boot 中,在 yml 文件中配置属性,可以使用 `@Value` 注解来获取。 题目 5: Spring Boot 默认...

    30 道 Spring Cloud 面试题及答案.docx

    2. 使用 Spring Cloud 有什么优势? 使用 Spring Cloud 可以解决以下问题: * 与分布式系统相关的复杂性,如网络问题、延迟开销、带宽问题、安全问题等。 * 服务发现:服务发现工具管理群集中的流程和服务如何查找...

Global site tag (gtag.js) - Google Analytics