Spring入门 IOC/DI基础案例
目录
前言
一、创建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基础案例相关推荐
- Spring的IOC/DI
一.Spring框架模块结构 Spring Framework是由Spring团队研发的模块化.轻量级开源框架.其主要目的是为了简化项目开发. Test 对应spring-test.jar. Spri ...
- Spring框架IoC/DI原理及实现
1.概念 IoC:指将对象的创建权,交给到Spring容器: DI :指Spring创建对象的过程中,将对象依赖的属性通过配置的方式自动的设值给当前的对象 . IoC/DI注解详解 完成IoC/DI, ...
- Spring入门-ioc基础案例代码
目录 一.ioc介绍 二.基础代码实现 1.创建接口实现类 2.传统方式创建 三.spring bean方式创建 1.配置文件 2.编写实现类 一.ioc介绍 略 导入坐标 <dependenc ...
- Spring入门 IOC
JAVA就业套餐课:https://edu.csdn.net/combo/detail/1230 课程说明 一. 技术概览 轻量级的企业应用开发越来越受到广大Java应用开发者的追捧,而Spring框 ...
- 解释Spring中IOC, DI, AOP
oc就是控制翻转或是依赖注入.通俗的讲就是如果在什么地方需要一个对象,你自己不用去通过new 生成你需要的对象,而是通过spring的bean工厂为你长生这样一个对象. aop就是面向切面的编程.比如 ...
- Spring框架原理 | IOC/DI | Bean
- Spring入门(通俗易懂)
前言:网上的框架学习教程千千万,所以我通过查看别人理解的,以及一些教程总结了我所掌握的spring的知识点,总的来说就是三个知识点,IOC.DI和AOP的使用,所以并没有那么复杂的理论知识点,如果有错 ...
- Spring(二)——IoC
IoC(Inversion of Control)称之为控制反转,指的是在Spring框架的配置文件中声明对象,由框架负责创建对象,这叫做控制反转.实现方式有两种:DI(Dependency Inje ...
- Spring 实践 -IoC
Spring 实践 标签: Java与设计模式 Spring简介 Spring是分层的JavaSE/EE Full-Stack轻量级开源框架.以IoC(Inverse of Control 控制反转) ...
最新文章
- PostGIS_导入shp格式的数据
- Coursera课程Python for everyone:Quiz: Networks and Sockets
- Android之ListView的getItemViewType和getViewTypeCount
- SqlHelper 数据库操作类
- (转)公钥,私钥和数字签名这样最好理解
- win10配置JAVA和tomacat环境变量
- 如何将 Mac 恢复还原到以前的日期
- 配置JDK环境变量详细步骤
- 无线 WIFI 的13个信道频率范围
- umts是移动还是联通_WCDMA/GSM是什么意思 是电信移动还是联通
- 谈谈你对JMM的理解
- Simulink中的虚拟和非虚拟子系统
- js中图片加载失败,显示默认图片
- Android手游外挂入侵----寓攻于守,方能破敌
- c语言中include的作用,c语言include的用法是什么
- Mac如何将QQ音乐进行格式转化?
- Apache Kafka 在 vivo 的实战
- ltrim and rtrim函数使用例子
- 1064:奥运奖牌计数题
- JavaSE基础知识(五)--面向对象思想概述