Spring的第一天

1.Spring ioc

  控制反转,解决了上层完全依赖下层的问题,实现了上层对下层的控制

  底层原理:xml解析+反射+容器+设计模式

  注意 xml文件一定要放在src目录下

  获取容器的三种方式:

  ① ApplicationContext context=new ClassPathXmlApplicationContext("xml文件名");

  ② ApplicationContext context=new  FileSystemXmlApplicationContext(在本地目录的绝对路径)

  ③ ApplicationContext context=new xmlBeanFactory("资源文件")//已过时

  从容器获取bean对象的两种方式

  ① 通过反射实现

  ② 通过xml配置的id或者name

  注意

    通过反射实现,xml配置中只能有一个class对应的类是唯一的

    xml配置中的id是唯一的

  javaBean的创建时机

    当对象为单例模式时,在容器创建加载时就会被执行,当对象是多例模式时,从容器获取对象时才会执行。

    Spring默认为单例模式,可以在bean里设置scope属性设置设计模式

    singleton:单例模式(默认)

    prototype:多列的

  

2.DI

 是对ioc思想的实现,通过配置xml实现自动对javaBean的管理。

 实现方式:在xml中配置或者添加注解

3.内置bean和外置bean 

  外置bean设置的所有的bean都可用,内置bean只有自己的bean可用

4.自定义ioc步骤:

  导包

  创建解析xml的对象

  创建一个文件输入流并读取xml文件

  解析xml文件

  获取跟标签

  获取跟标签下的标签

  遍历跟标签下的标签

  获取id

  获取class

  通过反射获取字节码文件

  根据字节码对象创建对象

  把获取到的id与对象放到map集合中

  获取子标签下的标签

  遍历子标签下的 子标签

  获取name属性

  获取ref属性

  根据获取到的ref属性通过map的key获取对象

  获取方法名

  通过反射获取方法

  调用invoke执行方法 

  

 

猜你喜欢

转载自www.cnblogs.com/sunners/p/12051538.html