python ioc di_Sping(一)——IOC/DI
Spring是一个基于IOC和AOP的结构J2EE系统的框架
IOC(Inversion Of Control) 反转控制 是Spring的基础,由容器控制应用程序获取外部资源而非程序主动获取。
简单说就是创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象
DI(Dependency Inject) 依赖注入 . 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可。
下面例子通过Spring获取一个对象,并打印其name。
步骤1.新建项目,导入spring框架中lib下的jar包。导包办法:右键 project->properties->java build path->libaries->add external jars
步骤2.创建Catagory类,定义两个私有属性及其setter和getter
package com.how2java.pojo;
public class Category {
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private int id;
private String name;
}
步骤3.在src目录下新建applicationContext.xml文件
applicationContext.xml是Spring的核心配置文件,配置了BeanFactory可以生产的Bean的“图纸”,这里可通过反射获取Category的的实例,该实例获取的时候,注入字符串"Hello Sping!“到具体实例的name属性中。
步骤4.通过spring获取Category对象,以及该对象被注入的name属性。
如图所示,可以打印出通过Spring拿到的Category对象的name属性。
首先通过ClassPathXmlApplicationContext类手动实例化ApplicationContext容器(获得一个Bean工厂);
然后调用getBean("bean's name")方法产生一个名称为c的Bean。
注意:
1.配置文件中bean里的name属性是为了产生Bean实例的时候定位到某个具体的"图纸",和产生的实例的名字没有关系。
2.一个容器可以以字符串数组的形式添加多个xml。
3.命名规范:类名首字母大写,但是注入变量名首字母必须小写!必须小写!必须小写!
python ioc di_Sping(一)——IOC/DI相关推荐
- 控制反转 IOC 与依赖注入 DI
引言 简单总结和巩固一下spring的核心原理--IOC和DI的概念,为什么IOC要叫控制反转?IOC和DI的关系是怎样的? 一.IOC 控制反转 初学者可能很好奇,为什么spring framewo ...
- 【Java从0到架构师】Spring - IoC 控制反转、DI 依赖注入
IoC 控制反转.DI 依赖注入 Spring 简介 Spring 基本使用 - IoC 容器 依赖注入 (Dependency Injection) 基于 setter 的注入 - 自定义对象 be ...
- 什么是IOC(控制反转)、DI(依赖注入)举个形象的例子通俗易懂
更多免费教学文章请关注这里 学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清 ...
- Spring-初识Spring框架-IOC控制反转(DI依赖注入)
---恢复内容开始--- IOC :控制反转 (DI:依赖注入) 使用ioc模式开发 实体类必须有无参构造方法 1.搭建Spring环境 下载jar http://maven.springframew ...
- [Java] 什么是IoC?什么是DI?它们的区别是什么?
文章目录 前言 IoC IoC的两种应用 IoC容器 约定大于配置 IoC容器的优点 应用流程框架 DI 结语 参考 前言 学习应用程序框架永远绕不过的一个话题就是控制反转(IoC)和依赖注入(DI) ...
- 控制反转(IoC)与依赖注入(DI)详解
文章目录 什么是控制反转(IoC) 控制反转(IoC)有什么作用 控制反转(IoC)是怎么分类的 依赖注入 接口注入 Setter方法注入 构造器注入 依赖查找 上下文依赖查找(Contextuali ...
- 什么是IOC(控制反转)、DI(依赖注入)
原文地址(摘要了部分内容):https://blog.csdn.net/qq_22654611/article/details/52606960/ 学习过Spring框架的人一定都会听过Spring的 ...
- 谈谈php里的IOC控制反转,DI依赖注入
理论 发现问题 在深入细节之前,需要确保我们理解"IOC控制反转"和"DI依赖注入"是什么,能够解决什么问题,这些在维基百科中有非常清晰的说明. 控制反转(In ...
- 详解spring的IOC控制反转和DI依赖注入
转载 详解spring的IOC控制反转和DI依赖注入 2018-06-05 15:45:34 jiuqijack 阅读数 2945 文章标签: spring IOC控制反转 DI依赖注入 更多 分类专 ...
- 三大框架之spring框架+IoC控制反转、DI依赖注入
三大框架:业务层框架Spring+IoC+DI 往期文章:jsp与cookie.重定向与RESTFul架构支持 下一章节: 持久层框架MyBatis 初识Spring框架 MyBatis 入门http ...
最新文章
- 漫画 | 人到中年,一地鸡毛
- Follow Me:CCIE RS--新版CCIE Routing Switching 考纲要点
- js实现反恐精英+曲线图+饼状图
- 【Chocolatey】查找包
- Http的持久连接和管线化
- 解决方法 svn checkout 更改用户名密码/断网续传
- 后端基础概念:各种OCV一网打尽(下篇)
- 最新版mysql8.0.13如何汉化_mysql8.0.13下载与安装图文教程
- 多个文件的文件名简体中文转换成繁体中文的简单操作
- 阿里云,腾讯云,保利威视,金山云,七牛云的视频云方案有什么不同啊?
- 如何写一个优质的网站标题title?
- SAP 银企直连交易明细查询的分页与FTP读取
- linux路径跟踪命令,Linux基础命令---tracepath追踪路由信息
- 软件测试怎么做?靠谱第三方软件测评公司有哪些?
- Java入门基础知识点一
- 360度全景的地拍如何制作?
- 计算机网络 与信息安全专业就业,信息安全专业是学什么的 毕业后的就业方向有哪些...
- Eric6与pyqt5学习笔记 6【实战2 window伪文本编辑器】【纯eric6操作】
- python王者战斗_Python3 类与对象之王者荣耀对战小游戏
- 项目维护几年了,为啥还这么卡?
热门文章
- SAP云平台上的Mendix服务 - 如何注册帐号
- 使用ABAP代码获得Netweaver环境变量
- SAP FSM 学习笔记(三) 在微信里发起SAP FSM客户预约
- SAP Fiori ButtonRenderer
- 如何在outlook的日历Calendar里实现按照多时区显示日程安排
- SAP Cloud for Customer的Opportunity搜索前台实现原理
- Marketing Cloud里CSRF token的获取时机
- SAP云平台里Run index.html和Run as SAP Fiori Launchpad的区别
- Equipment download - No data contained in BDoc
- ABAP的一个新关键字 - How does FROM lookup_tab work