天天看点

Spring入门笔记之ioc容器

                                                                              Spring框架入门笔记(一)

                                                                                                                 ——2018年11月20日

什么是Spring?

Spring是一个开源的JavaEE开发框架。Spring框架的核心功能可以应用在任何Java应用程序中,但对Java EE平台上的web应用程序有更好的扩展性。Spring的用途不仅限于服务器的开发。从简单性.可测试性和松耦合的角度而言,任何java应用都可以从Spring总收益。Sping的核心是控制反转(IOC)和面向切面编程(AOP)。

Spring的优点:

  • 轻量级:
  • 控制反转(IOC):Spring使用控制反转技术实现松耦合。依赖被注入到对象,而不是创建或寻找依赖对象。
  • 面向切面编程(AOP):Spring支持面向切面编程,同时把应用的业务逻辑与系统的服务分离开来。
  • 容器:Spring包含并管理应用程序对象的配置及生命周期。
  • MVC框架:Spring的web框架是一个设计优良的web mvc框架,很好的取代了一些web框架。
  • 事物管理:Spring对下至本地业务上至全局业务(JAT)提供了同意的事务管理接口。
  • 异常处理:Spring提供一个方便的API将特定技术的异常(由JDBC,Hibernate,或JDO抛出)转化为一致的,Unchecked异常。
  • 方便集成各种优秀框架:

Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架(如:Struts,Mybatis)的直接支持。

核心容器

Core Container:包括:Beans,Core,Context,SpEL

1. core和beans模块提供了整个框架最基础的部分,包括了IoC(控制反转)和Dependency Injection(依赖注入)。

2. Context建立在Core和Beans模块提供的基础之上:他提供了框架式访问对象的方式

3. core、beans、context构成了Spring的骨架

4. SpEL:提供了一种强大的用于在运行时操作对象的表达式语言

这是Spring的基本模块,它提供了Spring框架的基本功能。BeanFactory是所有Spring的应用核心。它是个接口,Spring框架是建立在这个模块之上的。

入门程序阶段

1.首先需要Maven依赖:

Spring入门笔记之ioc容器

Jar包有四个核心一个依赖:

附上地址:https://blog.csdn.net/programmer123455/article/details/78598722

2.目标类:

实现依赖注入:

Spring入门笔记之ioc容器

里面分别写上get,set方法。

入门测试:

Spring入门笔记之ioc容器

但是如果在实体类中,有

Spring入门笔记之ioc容器

这种需求该怎么配置呢?

Spring入门笔记之ioc容器

就这样配置:

Spring入门笔记之ioc容器

这样teacher和dog中的属性就有值了。

IOC容器

  1. 概念:ioc容器是具有依赖注入功能的容器,IOC容器负责实例化,定位,配置应用程序中的对象及建立这些对象间的依赖。应用程序无需直接在代码中new相关的对象,应用程序由IOC容器进行组装。Spring中BeanFactory是IOC容器的实际代表者。
  2. 依赖注入装配Bean基于注解

开发中使用注解取代xml配置文件。

*表现层:@Controller

* 业务层:@Service

* 持久层:@Repository

* 基本注解:@Component

@Component取代<bean class=””>

@Component(“id”)取代<bean id=”” class=””>

  1. 依赖注入,给私有字段设值,也可以给setter方法设值

a.普通值:@Value(“ ”)

b.引用值:

按照类型注入:@Autowired

按照名称注入1:@Autowired(“名称”)

按照名称注入2:@Resource("名称")

  1. 生命周期

初始化:@PostConstruct

销毁:@PreDestroy

注解使用前提:

Spring入门笔记之ioc容器

添加命名空间,让spring扫描含有注解类。