IoC入门案例之DI

1、基于IoC 管理bean

2、Service中使用new形式创建的Dao对象是否保留?(否)

3、Service中需要的Dao对象如何进入到Service中?(提供方法)

4、Service与dao之间的关系如何描述(配置)

  1. 删除使用new的形式创建的对象的代码
    1. package com.huahua2.service.impl;
      
      import com.huahua2.dao.BookDao;
      import com.huahua2.dao.impl.BookDaoImpl;
      import com.huahua2.service.BookService;
      
      public class BookServiceImpl implements BookService {
      
          // 5、删除业务层中使用new的方式创建的dao对象
          //  private BookDao bookDao = new BookDaoImpl();
          private BookDao bookDao;
        
          @Override
          public void save() {
              System.out.println("book service save ...");
              bookDao.save();
          }
      }
      

  2. 提供依赖对象对应的setter方法
    1. package com.huahua2.service.impl;
      
      import com.huahua2.dao.BookDao;
      import com.huahua2.dao.impl.BookDaoImpl;
      import com.huahua2.service.BookService;
      
      public class BookServiceImpl implements BookService {
      
          // 5、删除业务层中使用new的方式创建的dao对象
          //  private BookDao bookDao = new BookDaoImpl();
          private BookDao bookDao;
          // 6、提供对应的set方法
          public void setBookDao(BookDao bookDao) {
              this.bookDao = bookDao;
          }
      
          @Override
          public void save() {
              System.out.println("book service save ...");
              bookDao.save();
          }
      }
  3. 配置service 和dao之间的关系
    1. <?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">
          <!--    1、导入spring的坐标spring-context,对应版本-->
          <!--    2、配置bean-->
          <!--    id属性表示给bean起名字-->
          <!--    class属性表示给bean定义类型-->
          <bean id="bookDao" class="com.huahua2.dao.impl.BookDaoImpl"/>
          <bean id="bookService" class="com.huahua2.service.impl.BookServiceImpl">
              <!--7、配置service与dao的关系-->
              <!--property 标签表示配置当前bean的属性-->
              <!--name属性表示配置哪一个具体的属性-->
              <!-- ref 属性表示参照哪一个bean-->
              <property name="bookDao" ref="bookDao"/>
          </bean>
      </beans>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值