2.控制反转 spring_ioc
概念:
控制反转[Inversion of Control]指应用本身不负责依赖对象(被调用对象)的创建及维护,由外部容器(Spring容器)负责依赖对象的创建及维护.
实现方式:
第1种: 构造方法
<bean id="Bean匿名" class="类全名" />
第2种: 工厂类的静态方法
<!-- Bean匿名=工厂类.静态方法名() --><bean id="Bean匿名" class="工厂类全名" factory-method="静态方法名"/>
第3种: 工厂类的对象方法
<bean id="别名A" class="工厂类全名"/>
<bean id="别名" factory-bean="别名A" factory-method="方法名"/>
第4种: 注解方式
- 添加context命名空间和context约束文件的地址 ( IDEA会自动生成 )
- 添加 < context:component-scan base-package="包名" > (输入com会联想到)
- 在相关类上添加注解:
注解: @Controller[标注在Action类上],@Service[标注在业务类上],@Repository,@Component[无法分辨层级,比如实体]
作用: 声明将当前类交给Spring容器管理.
扫描指定包中的类:
- Spring将扫描指定包中的类,默认扫描的类的Bean匿名为首字母小写的类名.
设置别名:
(设置别名一般用于注解方式的自动扫描,有两个相同名字的类出现时,设置别名以防冲突报错)
- 可以通过设置注解中的属性[通常为value属性],自定义别名.如 : @Component ( Value )
2.控制反转 spring_ioc相关推荐
- 浅析Spring——控制反转IoC
目录 1. IoC理论推导 2. 什么是IoC? 3. 引入DI 4. IoC容器 5. 注入对象的四种方法 1.基于接口 2.基于setter 3.基于构造函数 4.基于注解 6. 两种IoC实现方 ...
- ioc spring 上机案例_IOC(控制反转)—最后的爱,是放手
[摘要]Spring框架的一个重要理念之一,就是IOC,英文全拼为Inversion of Control, 中文翻译为控制反转,这是一个非常伟大的理念,不应该只是在程序中被提及. 某些教程,因为缺乏 ...
- [翻译]StructureMap 指南 – .NET中的依赖注入和控制反转
原文地址:http://www.pnpguidance.net/Post/StructureMapTutorialDependencyInjectionIoCNET.aspx StuctureMap ...
- 代码的演化-DI(理解依赖注入di,控制反转ioc)
控制反转(Inversion of Control IoC)在java中,Spring就是一个很好的应用.用于解除使用者和生产者的耦合. 一般的代码中.使用者即是生产者,使用者在调用它需要的对象的时候 ...
- 控制反转---依赖注入理解
在学习Spring的时候,意外找到这个控制反转(IoC)和面向切面(AOP)的容器框架之前,我们先来看一下什么是控制反转(IoC). 控制反转(Ioc)和依赖注入(DI)刚听到感到很难理解,平时也程序 ...
- 庖丁解牛Nop:控制反转--IOC和DI
IOC中文名被称作控制反转(Inversion of Control),DI被称为依赖注入(Dependency Injection); 使用控制反转开发模式是先开发接口,然后再实现类.这种方法却可以 ...
- Unity(1)控制反转
控制反转 依赖注入方式 DI Types(Dependency injection) 接口注入 在接口中定义需要注入的信息. 首先定义一个接口,组件的注入将通过这个接口进行,该接口应由组件提供者提 供 ...
- php程序设计依赖注入_PHP控制反转和依赖注入
[TOC] PHP和依赖注入 理论知识 要了解控制反转( Inversion of Control ), 我觉得有必要先了解软件设计的一个重要思想:依赖倒置原则(Dependency Inversio ...
- python ioc di_Spring介绍,IOC(控制反转),DI(依赖注入)介绍及两种注入方法
Spring介绍,IOC(控制反转),DI(依赖注入)介绍及两种注入方法 第一中方法:在xml文件中注入: (1)开源的轻量级的应用开发框架 特点:a.简化开发:b.解耦:c.集成: 原理对象与对象之 ...
最新文章
- POJ 3111 K Best (最大化平均值,贪心 二分)难度⭐⭐⭐
- ubuntu安装(owncloud-docker安装)
- mysql查询无限下级_示例php+mysql查询实现无限下级分类树输出
- 直击 Elementary OS 0.3 Freya - 下载和安装指南
- ARP防治攻略————服务器防护
- Linux中的工作队列
- Android LayoutInflater 动态地添加删除View
- 收银机打印数据截取_自助收银机大大节约了人力成本
- CMS系统评测,主流自助建站系统比较排名
- IMX462 Sensor 对接HI3559A
- java物业管理系统描述,基于java小区物业管理系统.doc
- videojs-flash.min.js 报错 this.el_.vjs_getProperty is not a function
- Blender骨骼动画记录
- android 好友功能,ListView模拟微信好友功能
- Docker,compose,kitematic Overview and build Php WordExpress
- win10更新至1909版本后,Primo Ramdisk失效的解决方案
- Go语言解析Json(使用jsonparser)
- Linux 安装VMware Tools(open-vm-tools)实现桌面全屏、跨平台复制等功能
- Centos7.9+mysql8.0开启指定IP远程连接数据库
- 电子称DIY(贴应变片+写代码)
热门文章
- android studio异步单元测试,在Android Studio中可以进行单元测试
- todo已完成任务_uTools 插件介绍 | 「todo」!打工人必备
- Oracle 原理:用户和权限,Profile,系统权限,对象权限,角色
- 判断是不是素数python_Python 判断是否为质数或素数的实例
- 理解:TI C6000 数据存储处理与性能优化
- vnc远程桌面复制文件Linux,vncviewer远程桌面linux
- 盘点 Serverless 架构的六个特质
- 张家港职称计算机应用能力考试,2016年江苏张家港计算机应用能力考试零基础备考...
- vscode怎么写qt项目_使用VSCode 编译调试QT程序
- 消息队列 策略_消息模型:主题和队列有什么区别?