欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring注入对象类型属性

程序员文章站 2022-03-05 13:53:00
...

1. 创建一个service类

public class UserService {

    //1. 定义一个dao类型的属性
    private UserDao userDao;

    //2. 生成set方法
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }


    public void add(){
        System.out.println("service...........");
        //在service当中得到dao这个类的对象,才能够调用dao当中的方法。
        //UserDao dao = new UserDao();
        //dao.add();
        userDao.add();
    }
}

2. 创建一个Dao类

public class UserDao {

    public void add(){
        System.out.println("dao...........");
    }
}

3. 为了在Service类当中使用Dao对象的方法

4. 编辑配置文件

<bean>
    <bean id="userDao" class="cn.itcast.ioc.UserDao"></bean>

    <bean id="userService" class="cn.itcast.ioc.UserService">
        <!-- 注入Dao对象
            name属性值,service类里面的属性的名称。
            不要写value属性,因为是对象。
            写ref属性。dao配置bean标签当中id值。
         -->
        <property name="userDao" ref="userDao"></property>
    </bean>
</beans>

5. 进行测试

public class TestIOC {

    @Test
    public void testUser(){
        //1. 加载spring的配置文件,根据配置创建对象。
        ApplicationContext context = 
            new ClassPathXmlApplicationContext("bean1.xml");

        //2. 得到配置创建的对象。
        UserService userService=(UserService)context.getBean("userService");

        userService.add();
    }
}

6. 得到测试结果

Spring注入对象类型属性