spring学习基础(ioc底层原理,bean的配置和注解)

spring概念:

1.spring是开源轻量的框架

2.spring的核心主要有两部分:

 (1)aop:面向切面编程,即扩展功能不是通过修改源代码实现(比如声明式事务)

 (2)ioc:控制反转,比如有一个类,在类里面有方法不是静态的,需要创建类的对象,使用类的对象调用方法,需要new出来类的对象; 控制反转就是把对象的创建不是通过new的方式,而是交给配置文件来创建对象

3.spring是一站式框架

(1)spring在javaee三层结构中每一层都提供不同的解决技术;

   web层:springMVC

   service层:spring的ioc

   dao层:spring的jbdcTemplate

4.spring版本

   (1)hibernate5.x

   (2)spring4.x

spring ioc操作:

1.把对象交给ioc操作

2.ioc操作俩部分:

   (1)ioc配置文件方式

   (2)ioc注解方式

ioc底层原理:

(1)xml文件配置

(2)dom4j解析xml

(3)工厂设计模式

(4)反射

spring学习基础(ioc底层原理,bean的配置和注解)_第1张图片

spring学习基础(ioc底层原理,bean的配置和注解)_第2张图片

在spring的配置文件bean.xml中引入schema约束,hibernate是dtd约束

spring学习基础(ioc底层原理,bean的配置和注解)_第3张图片


项目中测试对象是否创建成功代码:


spring学习基础(ioc底层原理,bean的配置和注解)_第4张图片

bean实例化的三种方式:

(1)使用类的无参构造函数创建(重点)

    如果类中没有无参数的构造函数,调用会出现一个 异常

(2)使用静态工厂创建

    创建静态方法返回类的对象

(3)使用实例工厂的创建

   创建不是静态方法,返回类的对象

java代码中属性注入的三种方式:

spring学习基础(ioc底层原理,bean的配置和注解)_第5张图片

但是在spring框架中,只支持前两种:

(1)set方法注入(最多)

(2)有参构造函数注入

  有参构造:

spring学习基础(ioc底层原理,bean的配置和注解)_第6张图片

spring学习基础(ioc底层原理,bean的配置和注解)_第7张图片

测试结果:

spring学习基础(ioc底层原理,bean的配置和注解)_第8张图片


你可能感兴趣的:(springIOC,springIOC)