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相关推荐

  1. 控制反转 IOC 与依赖注入 DI

    引言 简单总结和巩固一下spring的核心原理--IOC和DI的概念,为什么IOC要叫控制反转?IOC和DI的关系是怎样的? 一.IOC 控制反转 初学者可能很好奇,为什么spring framewo ...

  2. 【Java从0到架构师】Spring - IoC 控制反转、DI 依赖注入

    IoC 控制反转.DI 依赖注入 Spring 简介 Spring 基本使用 - IoC 容器 依赖注入 (Dependency Injection) 基于 setter 的注入 - 自定义对象 be ...

  3. 什么是IOC(控制反转)、DI(依赖注入)举个形象的例子通俗易懂

    更多免费教学文章请关注这里 学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清 ...

  4. Spring-初识Spring框架-IOC控制反转(DI依赖注入)

    ---恢复内容开始--- IOC :控制反转 (DI:依赖注入) 使用ioc模式开发 实体类必须有无参构造方法 1.搭建Spring环境 下载jar http://maven.springframew ...

  5. [Java] 什么是IoC?什么是DI?它们的区别是什么?

    文章目录 前言 IoC IoC的两种应用 IoC容器 约定大于配置 IoC容器的优点 应用流程框架 DI 结语 参考 前言 学习应用程序框架永远绕不过的一个话题就是控制反转(IoC)和依赖注入(DI) ...

  6. 控制反转(IoC)与依赖注入(DI)详解

    文章目录 什么是控制反转(IoC) 控制反转(IoC)有什么作用 控制反转(IoC)是怎么分类的 依赖注入 接口注入 Setter方法注入 构造器注入 依赖查找 上下文依赖查找(Contextuali ...

  7. 什么是IOC(控制反转)、DI(依赖注入)

    原文地址(摘要了部分内容):https://blog.csdn.net/qq_22654611/article/details/52606960/ 学习过Spring框架的人一定都会听过Spring的 ...

  8. 谈谈php里的IOC控制反转,DI依赖注入

    理论 发现问题 在深入细节之前,需要确保我们理解"IOC控制反转"和"DI依赖注入"是什么,能够解决什么问题,这些在维基百科中有非常清晰的说明. 控制反转(In ...

  9. 详解spring的IOC控制反转和DI依赖注入

    转载 详解spring的IOC控制反转和DI依赖注入 2018-06-05 15:45:34 jiuqijack 阅读数 2945 文章标签: spring IOC控制反转 DI依赖注入 更多 分类专 ...

  10. 三大框架之spring框架+IoC控制反转、DI依赖注入

    三大框架:业务层框架Spring+IoC+DI 往期文章:jsp与cookie.重定向与RESTFul架构支持 下一章节: 持久层框架MyBatis 初识Spring框架 MyBatis 入门http ...

最新文章

  1. 漫画 | 人到中年,一地鸡毛
  2. Follow Me:CCIE RS--新版CCIE Routing Switching 考纲要点
  3. js实现反恐精英+曲线图+饼状图
  4. 【Chocolatey】查找包
  5. Http的持久连接和管线化
  6. 解决方法 svn checkout 更改用户名密码/断网续传
  7. 后端基础概念:各种OCV一网打尽(下篇)
  8. 最新版mysql8.0.13如何汉化_mysql8.0.13下载与安装图文教程
  9. 多个文件的文件名简体中文转换成繁体中文的简单操作
  10. 阿里云,腾讯云,保利威视,金山云,七牛云的视频云方案有什么不同啊?
  11. 如何写一个优质的网站标题title?
  12. SAP 银企直连交易明细查询的分页与FTP读取
  13. linux路径跟踪命令,Linux基础命令---tracepath追踪路由信息
  14. 软件测试怎么做?靠谱第三方软件测评公司有哪些?
  15. Java入门基础知识点一
  16. 360度全景的地拍如何制作?
  17. 计算机网络 与信息安全专业就业,信息安全专业是学什么的 毕业后的就业方向有哪些...
  18. Eric6与pyqt5学习笔记 6【实战2 window伪文本编辑器】【纯eric6操作】
  19. python王者战斗_Python3 类与对象之王者荣耀对战小游戏
  20. 项目维护几年了,为啥还这么卡?

热门文章

  1. SAP云平台上的Mendix服务 - 如何注册帐号
  2. 使用ABAP代码获得Netweaver环境变量
  3. SAP FSM 学习笔记(三) 在微信里发起SAP FSM客户预约
  4. SAP Fiori ButtonRenderer
  5. 如何在outlook的日历Calendar里实现按照多时区显示日程安排
  6. SAP Cloud for Customer的Opportunity搜索前台实现原理
  7. Marketing Cloud里CSRF token的获取时机
  8. SAP云平台里Run index.html和Run as SAP Fiori Launchpad的区别
  9. Equipment download - No data contained in BDoc
  10. ABAP的一个新关键字 - How does FROM lookup_tab work