Spring注入对象类型属性

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. 得到测试结果

这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_41748874/article/details/80993232
今日推荐