Spring学习篇01-Spring容器相关基本概念

1.基本概念:

  1.1.Spring容器

    Spring容器它负责创建Bean,提供Bean,注入Bean的功能。

    1.1.1 ApplicationContext 容器的上下文也就是容器工厂接口。

        实现其接口的类有

          ClassPathXmlApplicationContext

          FileSystemXmlApplicationContext

          WebApplicationContext:Web专用

    1.1.2 BeanFactory:容器工厂面向Spring,很少使用

  1.2.IOC

    Inversion of Control 控制依赖反转.在使用传统的容器时,客户端要从容器中获取对象,必须想容器申请对象,然后又容器提供对象。在Spring容器中,客户端要使用的对象是由Spring容器自己来注入,不需要客户端想容器发送请求。

  1.3.DI

    依赖注入;依赖于Spring容器向客户端注入对象。

2.IOC有什么好处?

  减少类之间的耦合度。下面说说三种不同的属性注入方式的耦合度

  2.1 接口分离

    在接口分离的情况下,Person类依赖于Car接口和具体型号的车,并且要负责创建具体型号的车。

  2.2 工厂模式

    为了减少Person类与具体汽车之间的耦合,那么就用了工厂模式,有工厂模式来负责提供接口Car的实现对象。

  2.3 依赖注入

    Spring容器依赖于Person类和Car接口以及Car的子接口,从而Person只依赖于Car接口就行了。

时间: 2024-12-28 14:38:32

Spring学习篇01-Spring容器相关基本概念的相关文章

Spring学习1:Spring基本特性

http://longliqiang88.github.io/2015/08/14/Spring%E5%AD%A6%E4%B9%A01%EF%BC%9ASpring%E5%9F%BA%E6%9C%AC%E7%89%B9%E6%80%A7/ Spring学习1:Spring基本特性 Spring基本特征 Spring基本特征Spring是一个非常活跃的开源框架:它是一个基于Core来构架多层JavaEE系统的框架,它的主要目地是简化企业开发.Spring以一种非侵入式的方式来管理你的代码,Spri

Spring学习1-初识Spring

一.简介   1.Spring是一个开源的控制反转(Inversion of Control ,IoC)和面向切面(AOP)的容器框架.它的主要目得是简化企业开发.  2.为何要使用Spring?    i:降低组件之间的耦合度,实现软件各层之间的解耦.    ii:可以使用容器提供的众多服务,如:事务管理服务.消息服务等等.当我们使用容器管理事务时,开发人员就不再需要手工控制事务.也不需处理复杂的事务传播. i3:容器提供单例模式支持,开发人员不再需要自己编写实现代码. i4:容器提供了AOP

spring学习笔记(一) Spring概述

博主Spring学习笔记整理大部分内容来自Spring实战(第四版)这本书.  强烈建议新手购入或者需要电子书的留言. 在学习Spring之前,我们要了解这么几个问题:什么是Spring?Spring的优势在哪里?怎么系统的学习Spring? 一.什么是Spring? Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发. 那有人就会问了,Spring是如何简化开发的? 在传统开发中,一个应用是需

Spring学习(五)--构建Spring Web应用程序

一.Spring MVC起步 看过猫和老鼠的小伙伴都可以想象Tom猫所制作的捕鼠器:它的目标 是发送一个小钢球,让它经过一系列稀奇古怪的装置,最后触发捕鼠 器.小钢球穿过各种复杂的配件,从一个斜坡上滚下来,被跷跷板弹起,绕过一个微型摩天轮,然后被橡胶靴从桶中踢出去.经过这些后,小钢球会对那只可怜又无辜的老鼠进行捕获.而Spring MVC框架与捕鼠器有些类似.Spring将请求在调度Servlet.处理器映射(handler mapping).控制器以及视图解析器(view resolver)之

Spring学习笔记——关于Spring注解扫描不能注入new对象问题

这几天Leader让我用工厂模式对部分业务逻辑代码进行重构,过程是痛苦的(这里就不详细说了),结果很甜蜜.下面记录一下我在重构过程中遇到一个问题. 部分代码如下: @service(orderFactory) public class OrderFactory implements IOrderFactory{ public OrderCreate factory(String type){ if(type != null && type.indexOf("1")! =

Spring学习总结一——SpringIOC容器

什么是spring spring是一个开源的轻量级的应用开发框架,它提供了IOC和AOP应用,可以减少组件之间的耦合度,即 解耦,spring容器可以创建对象并且管理对象之间的关系. 一:实例化spring容器对象 1:导入spring相关支持jar包 2:创建spring容器的配置文件applicationContext.xml,名称可以自己定义 内容如下: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <

Spring 学习笔记01

1.Spring 简介 Spring 是为企业提供的一个轻量级的解决方案,包括:基于依赖注入的核心机制,基于AOP的声明式事务管理, 与多种持久层技术的集合以及优秀的WEB MVC框架等. Spring 框架的组成结构: 2.Spring 准备工作 1)首先在官网下载Spring 压缩文件并解压 2)将jar包导入eclipse的项目中 3.Spring 的使用 Spring 核心容器就是一个超级大工厂,所有的对象都被当成Spring核心容器管理的对象,称为Bean. 首先定义两个类 Pen 和

Spring学习篇:AOP知识整理

AOP知识整理 AOP(Aspect-Oriented Programming):面向切面的编程.OOP(Object-Oriented Programming)面向对象的编程.对于OOP我们已经再熟悉不过了,对于AOP,可能我们会觉得是一种新特性,其实AOP是对OOP的一种补充,OOP面向的是纵向编程,继承.封装.多态是其三大特性,而AOP是面向横向的编程. 面向切面编程(AOP)通过提供另外一种思考程序结构的途经来弥补面向对象编程(OOP)的不足.在OOP中模块化的关键单元是类(classe

Spring学习(十九)----- Spring与WEB容器整合

首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关.即不会因为 filter 写在 listener 的前面而会先加载 filter.最终得出的结论是:listener -> filter -> servlet 同时还存在着这样一种配置节:context-param,它用于向 ServletContext 提供键值对,即应用程序上下文信息.我们的 listener, filter 等在初始化时会用到这些上下文中的信息,那么 context-param 配置节是不是应该写在