目录

前言

一、创建set方法让外部进行方法提供

二、配置文件

三、实际运行


前言

书接上回:Spring入门-ioc基础案例代码_年关的博客-CSDN博客

我们通过Spring方式进行了对象创建,但是如果对象本身所具有的某个属性就是对象,同样需要new,这样的话我们该怎么做呢?

Spring为我们提供了解决办法,在<bean>标签里提供了<property>标签来对类属性进行注入

一、创建set方法让外部进行方法提供

1、创建接口

public interface BookService {String all();void setBookDao(BookDao bookDao);
}

2、实现接口

这里的bookDao是另一个对象,使用使用set方法,以供Spring框架在创建对象的自动调用为BookDao赋值


public class BookServiceImpl implements BookService{
//    BookDao bookDao=new BookDaoImpl();
//    删除业务层中使用new创建对象,使用set提供方法private BookDao bookDao;@Overridepublic String all() {System.out.println("BookServiceImpl");bookDao.select();return null;}@Overridepublic void setBookDao(BookDao bookDao) {this.bookDao=bookDao;}
}

二、配置文件

<?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">
<!--    .导入serping坐标 spring-context 5.2.10 R-->
<!--    2,配置bean-->
<!--    bean标签配置bean-->
<!--    id表示给bean起名字-->
<!--    class属性表示给bean起名字--><bean class="com.demo2.Dao.BookDaoImpl" id="bookDaobean"></bean><bean class="com.demo2.service.BookServiceImpl" id="bookServicebean">
<!--        配置service与dao的关系-->
<!--        property表示配置当前bean的属性 name表示bookService内的属性对象,ref表示对象的来源,来自其他的bean--><property name="bookDao" ref="bookDaobean"/></bean></beans>

在这里,我们先对bookdao行配置,然后再对bookservice内的bookdao对象尽行绑定,在bookServicebean被调用的时候,会自动生成bookDao进行注入

三、实际运行

源代码:

package com.demo2;import com.demo2.Dao.BookDao;
import com.demo2.service.BookService;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;public class app {public static void main(String[] args) {
//        获取ioc容器ApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContest.xml");//获取beanBookService bookService = (BookService) ctx.getBean("bookServicebean");bookService.all();}
}

运行结果:

Spring入门 IOC/DI基础案例相关推荐

  1. Spring的IOC/DI

    一.Spring框架模块结构 Spring Framework是由Spring团队研发的模块化.轻量级开源框架.其主要目的是为了简化项目开发. Test 对应spring-test.jar. Spri ...

  2. Spring框架IoC/DI原理及实现

    1.概念 IoC:指将对象的创建权,交给到Spring容器: DI :指Spring创建对象的过程中,将对象依赖的属性通过配置的方式自动的设值给当前的对象 . IoC/DI注解详解 完成IoC/DI, ...

  3. Spring入门-ioc基础案例代码

    目录 一.ioc介绍 二.基础代码实现 1.创建接口实现类 2.传统方式创建 三.spring bean方式创建 1.配置文件 2.编写实现类 一.ioc介绍 略 导入坐标 <dependenc ...

  4. Spring入门 IOC

    JAVA就业套餐课:https://edu.csdn.net/combo/detail/1230 课程说明 一. 技术概览 轻量级的企业应用开发越来越受到广大Java应用开发者的追捧,而Spring框 ...

  5. 解释Spring中IOC, DI, AOP

    oc就是控制翻转或是依赖注入.通俗的讲就是如果在什么地方需要一个对象,你自己不用去通过new 生成你需要的对象,而是通过spring的bean工厂为你长生这样一个对象. aop就是面向切面的编程.比如 ...

  6. Spring框架原理 | IOC/DI | Bean

  7. Spring入门(通俗易懂)

    前言:网上的框架学习教程千千万,所以我通过查看别人理解的,以及一些教程总结了我所掌握的spring的知识点,总的来说就是三个知识点,IOC.DI和AOP的使用,所以并没有那么复杂的理论知识点,如果有错 ...

  8. Spring(二)——IoC

    IoC(Inversion of Control)称之为控制反转,指的是在Spring框架的配置文件中声明对象,由框架负责创建对象,这叫做控制反转.实现方式有两种:DI(Dependency Inje ...

  9. Spring 实践 -IoC

    Spring 实践 标签: Java与设计模式 Spring简介 Spring是分层的JavaSE/EE Full-Stack轻量级开源框架.以IoC(Inverse of Control 控制反转) ...

最新文章

  1. PostGIS_导入shp格式的数据
  2. Coursera课程Python for everyone:Quiz: Networks and Sockets
  3. Android之ListView的getItemViewType和getViewTypeCount
  4. SqlHelper 数据库操作类
  5. (转)公钥,私钥和数字签名这样最好理解
  6. win10配置JAVA和tomacat环境变量
  7. 如何将 Mac 恢复还原到以前的日期
  8. 配置JDK环境变量详细步骤
  9. 无线 WIFI 的13个信道频率范围
  10. umts是移动还是联通_WCDMA/GSM是什么意思 是电信移动还是联通
  11. 谈谈你对JMM的理解
  12. Simulink中的虚拟和非虚拟子系统
  13. js中图片加载失败,显示默认图片
  14. Android手游外挂入侵----寓攻于守,方能破敌
  15. c语言中include的作用,c语言include的用法是什么
  16. Mac如何将QQ音乐进行格式转化?
  17. Apache Kafka 在 vivo 的实战
  18. ltrim and rtrim函数使用例子
  19. 1064:奥运奖牌计数题
  20. JavaSE基础知识(五)--面向对象思想概述

热门文章

  1. Vue中 对Table表格中的输入项进行校验
  2. javascript获取屏幕的可用宽度和高度
  3. Java1-4章总结
  4. 25亿,周鸿祎为何情定大神
  5. 修改window 用户名
  6. 迭代器设计模式(Iterator Design Pattern)[论点:概念、组成角色、相关图示、示例代码、框架中的运用、适用场景]
  7. 高斯消元法(Gauss Elimination)
  8. java最新jdk版本_java版本和jdk版本
  9. 多平台API,item_search - 根据关键词取商品列表
  10. 大话设计模式——装饰模式