Di使用属性注入步骤:

本文介绍了如何使用Spring框架进行依赖注入(DI)的实践操作,包括创建BookDao接口及其实现类BookDaoImpl,BookService接口及其实现类BookServiceImpl。在beans.xml中配置bean实例化并注入依赖,最后通过TestDI类进行测试,展示了DI的完整流程。
摘要由CSDN通过智能技术生成

1 创建一个包 (com.it.csx_di)

2 在这个包(com.it.csx_di)下创建一个接口(BookDao)

BookDao接口,代码如下:

public interface BookDao {

    public void save();

    

}

3 在这个包(com.it.csx_di)下创建一个类(BookDaoImpl)

BookDaoImpl类,代码如下:

public class BookDaoImpl implements BookDao{

   String name;

   String gender;

   

@Override

public void save() {

// TODO Auto-generated method stub

System.out.println("save....");

}

//快捷键 shift+alt+s  r

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getGender() {

return gender;

}

public void setGender(String gender) {

this.gender = gender;

}

   

}

4 在这个包(com.it.csx_di)下创建一个接口(BookService)

BookService接口,代码如下:

public interface BookService {

      public void addBook();

}

5 在这个包(com.it.csx_di)下创建一个类(BookServiceImpl)

BookServiceImpl类。代码如下:

public class BookServiceImpl  implements BookService {

        //以前给成员变量赋值的方式

    //   private BookDao bookDao1=new BookDaoImpl();

      // 通过xml文件的形式给bookDao变量赋值

      private BookDao  bookDao;

    

@Override

public void addBook() {

// TODO Auto-generated method stub

   this.bookDao.save();

}

public BookDao getBookDao() {

return bookDao;

}

public void setBookDao(BookDao bookDao) {

this.bookDao = bookDao;

}

}

6

在com.it.csx_di包中创建一个beans.xml文件,添加约束。

这个约束从IOC beans.txt复制过来。

Xml文件的内容如下:

   <!--  实例化一个BookDaoImpl类的实例,并且给成员变量赋值 -->

<bean id="bookDaoId" class="com.it.csx_di.BookDaoImpl">

   <!-- <proptery>标签的作用就是调用set方法  -->

   <property name="name">

     <value> <![CDATA[spring框架 作者&张三]]></value>

   </property>

   

    <property name="gender"><null></null></property>

</bean>

<!--  ref=bean的Id   value=一个值  -->

<bean  id="bookServiceId" class="com.it.csx_di.BookServiceImpl">

  <!-- 把bookDaoImpl类的实例注入给BookServiceImpl类中的bookDao成员变量  -->

        <property name="bookDao"  ref="bookDaoId"></property>

</bean>

7 测试程序:

public class TestDI {

   public static void main(String[] args) {

         String xmlPath="com/it/csx_di/beans.xml";

         

       //  ClassPathXmlApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext(xmlPath);

         

         ApplicationContext classPathXmlApplicationContext = new ClassPathXmlApplicationContext(xmlPath);

         

                          BookService bean =(BookService) classPathXmlApplicationContext.getBean("bookServiceId");

                          

                            bean.addBook();

}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值