美文网首页Spring我爱编程
spring ioc入门案例

spring ioc入门案例

作者: DouDouZH | 来源:发表于2018-05-25 20:03 被阅读69次

    一、实现步骤

    1、导入jar包

    (1)解压spring的zip文件
    jar特点:每个jar包都有三个,jar包、文档、源代码


    image.png

    (2)只需要导入spring里面的四个核心jar包

    image.png
    (3)导入支持日志的jar包,apache commons官网有http://commons.apache.org/
    image.png
    2、创建类,在类里面创建方法

    创建普通类,写一个方法
    User.java

    package work.zhangdoudou.ico;
    
    public class User {
        public void add(){
            System.out.println("add······");
        }
    
    }
    
    3、创建spring配置文件,配置创建类

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

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

    (2)引入约束


    image.png image.png

    (3)配置对象

    <?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入门 -->
        <bean id="user" class="work.zhangdoudou.ico.User"></bean>
    
    </beans>
    
    4、写测试代码创建对象

    (1)这段代码在测试中使用

    (2)建立测试类


    image.png

    TestUser.java

    package work.zhangdoudou.test;
    
    import static org.junit.Assert.*;
    import org.junit.Test;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    import work.zhangdoudou.ico.User;
    
    public class TestUser {
    
        @Test
        public void test() {
            //1加载配置文件,根据创建对象
            ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
            //2得到创建的对象
            User user=(User) context.getBean("user");
            user.add();
            System.out.println(user);
            
        }
    }
    
    5、运行结果
    image.png

    二、IOC和DI的区别

    1、IOC:控制反转:把对象交给spring进行配置
    2、DI:依赖注入,向类里面的属性设置值
    3、关系:依赖注入不能单独存在,需要在ioc基础上完成操作

    相关文章

      网友评论

      本文标题:spring ioc入门案例

      本文链接:https://www.haomeiwen.com/subject/eejujftx.html