您的位置:首页 > 编程语言 > Java开发

Spring的ioc底层原理和简单实例

2017-11-08 18:24 483 查看

传统创建对象方法



 

IOC 底层原理

1 ioc底层原理使用技术

(1)xml配置文件

(2)dom4j解决xml

(3)工厂设计模式

(4)反射

2 画图分析ioc实现原理



 

第一步 、导入jar包

(1)解压资料 zip 文件

Jar 特点:都有三个 jar 包,分别是必备包,文档包,源代码包。一般我们只需要 copy 第一个



 

(2)做spring最基本功能时候,导入四个核心的jar包就可以了



(3)导入支持日志输出的 jar 包

(4)最终我们需要的总共 6 个 jar 包,如下



(5)把他们放到 web/WEB-INF/lib 目录下,并添加到环境变量中

 

第二步、 创建类,在类里面创建方法

创建 com.liuyanzhao.ioc 包,并新建 User.java 文件

package com.liuyanzhao.ioc;

/**
 * Created by Liu_Yanzhao on 2017/8/2.
 */
public class User {
    public void add() {
        System.out.println("add..........");
    }

    public static void main(String[] args) {
        //原始做法,通过new来创建对象;而spring是通过配置文件来创建对象  
        User user = new User();
        user.add();
    }
}

 

第三步 创建spring配置文件,配置创建类

(1)spring核心配置文件名称和位置不是固定的

- 建议放到src下面,官方建议applicationContext.xml

(2)引入schema约束

具体位置在  \spring-framework-4.2.4.RELEASE\docs\spring-framework-reference\html

下的最后一个文件 xsd-configuration.html 中

我们是有浏览器打开,滚动条滑到最底端,复制如下内容



(3)配置对象创建

在 src 下创建 bean1.xml 文件,其实文件名和文件位置都不重要,

官方建议命名为 applicationContext.xml ,最后添加如下代码

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--ioc入门-->
    <!--id可以随意,class为类名路径-->
    <bean id="user" class="com.liuyanzhao.ioc.User"></bean>
</beans>

(4)写代码测试 对象的创建

在 com.liuyanzhao.ioc 下新建 TestIOC 文件

package com.liuyanzhao.ioc;

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

/**
 * Created by Liu_Yanzhao on 2017/8/2.
 */
public class TestIOC {
    @Test
    public void testuser() {
        //1、加载Spring配置文件,根据创建对象
        ApplicationContext context =
            new ClassPathXmlApplicationContext("bean1.xml");
        //2、得到配置创建的对象
        User user = (User) context.getBean("user");

        System.out.println(user);
        user.add();
    }
}

对啦,这里还要导入 JUnit 包,用于测试方法

(5) 运行 TestIOC 方法

输出内容如下:

com.liuyanzhao.ioc.User@5bcea91b

add..........

说明,IOC 成功创建对象

 

 

本文内容参考:传智播客视频

本文链接:https://liuyanzhao.com/5598.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: