Sring 从零开始 - 基础篇 1

Spring 就是一个用来解决软件开发过程中类与类之前的耦合性问题的框架。解决的方式通过Ioc和aop。

Spirng的思想:

我们把我们的一个软件比喻成一一台计算机,spring就像计算机中的主板。如果没有主板所有的组件都是焊接在一起的,一旦有一个零件换了就得整台计算机都无法工作。当有了spring后我们的软件中的各个类就像主板上的不同组件,全部都是插在spring的主配置文件上,可以自由的插拔,再也不用去类里面去改了。

.简述扩建发展历史。

在以上换挡框架发展历程行, 自从有了spring加入后, 基本上以后的所有框架都有spring的身影。

配置spirng的三种方式:

下面介绍用xml的方式进行配置:

1. 为bean 设置别名。

2. 使用import 导入其他springxml中的配置。

3.基于构造函数的依赖注入。

4. 为bean注入值得方式。外部bean注入方式。

5.使用neibubean注入。

6.list数据类型值得注入。

7. map数据类型注入值。

8. p 命名空间注入。

9. c命名空间注入,不支持list map 等复杂数据类型

10 改变加载顺序:

11. 懒加载:

12. 单例模式,多例模式:

多线程读写的时候多例存在线程安全的问题。多个线程同时对一个对象进行读写。所以多线程是最好用多例。

13. 实例化bean的三种方式:

  • 通过调用类的有参或无参构造方法
  • 配置constructor-args
  • 使用静态工厂方法,不通过调用UserServiceImpl来实例bean,而是通过调用该类的静态方法createUserServiceInstance来创建bean。

使用实例工厂方法,同上,通过serviceFactory类的方法createUserService来创建bean。

14. 自动注入:

14.1 当一个bean在xml配置中加了 autowire参数,则会为其对象属性自动找到填充的值。不用你手动的为期配置ref对象。

14.2 构造器自动注入,为该类的构造方法找到默认的填充值。

例如, 当构造函数是 Person(Wife wife,User user)

必须根据参数的list,在ioc 容器中找到完整实例,并注入,如果少一个都不会注入成功。如以上例子,ioc容器里面必须同时又Wife 和User

15. 处理多个类型匹配

16.  三种方式实现bean生命周期的回调。

17. 引入外部属性资源文件,即将常量信息放在一个properties文件中,在xml通过$+变量名的方式获取值:

db.propertites 文件内容如下:

18. spring表达时语言SpEL的使用。就是在配置文件中可以写一些逻辑。