【Spring】03:DI 入门:Service中注入Dao

62 阅读1分钟

回顾:DI,指bean之间依赖关系的建立。

下面,Service的bean使用到了Dao的bean。那么,Service对象中,如何创建(注入)Dao对象呢?

01:删除new的方式

02:提供对应的set方法

public class BookServiceImpl implements BookService {
    //1
    private BookDao bookDao;

    public void save() {
        System.out.println("book service save ...");
        bookDao.save();
    }
    //2
    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }
}

03:配置server与dao的关系

property标签:配置当前bean的属性

  • name属性:set后面的名字,setBookDao => bookDao
  • ref属性:当前容器中的bean

在如下xml文件中,service bean里,通过property标签“注入”了dao bean

<bean id="bookDao" class="com.itheima.dao.impl.BookDaoImpl"/>

<bean id="bookService" class="com.itheima.service.impl.BookServiceImpl">
    <property name="bookDao" ref="bookDao"/>
</bean>