记录学习Spring(IOC/DI)

根据自己学习的Spring做一些记录,主要是为了方便自己查阅复习.

一、介绍Spring

Spring是一个基于IOC和AOP的结构J2EE系统的轻量级框架;

  轻量级主要变现为不需要任何的容器就可以直接运行; 
  IOC 反转控制 是Spring的基础,Inversion Of Control ;
  也就是创建对象由以前的程序员自己new 构造方法来调用,变成了交由Spring创建对象 ;
  DI 依赖注入 Dependency Inject. 简单地说就是拿到的对象的属性,已经被注入好相关值了,直接使用即可,下面用实例来进行介绍.

二、用实例讲解IOC/DI

  ①新建一个项目,导入要用到的jar包(项目根目录下面lib),具体的jar包可以在网上下载.下面只展示了一部分.

②准备一个实体类pojo

③在src目录下新建applicationContext.xml文件
applicationContext.xml是Spring的核心配置文件

④测试代码

目前控制反转已经理解的差不多了.DI个人认为是下面这一部分

个人学习的网址是http://how2j.cn/.

三、注入对象

以上的实例中是注入的字符串或者整形的数字;接下来的实例是注入对象,这个时候所用到的是ref属性;

新建一个pojo类,并在其内部调用Category这个实体类;

接下来修改applicationContext.xml文件

除此之外还可以利用注解的方式进行注入;

首先修改applicationContext.xml文件,把ref属性注入的代码进行注释,并在bean标签之前加入<context:annotation-config/>

这句代码的意思是告诉Spring要用注解的方式进行配置;

同理bean也可以用注解的方式;在类上面加入注解@Component,因为配置从applicationContext.xml中移出来了,所以属性初始化放在属性声明上进行了。

原文地址:https://www.cnblogs.com/yayj/p/9983781.html

时间: 2024-12-10 13:37:53

记录学习Spring(IOC/DI)的相关文章

Spring -- IOC/DI 基础概念的理解

Spring -- IOC/DI 基础概念 思维导图: ------------------------------------------------------- IoC/DI 的基本概念 IoC是什么 ? IoC -- Inversion of control, 控制反转   在Java开发中,IoC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制.IoC是一种让服务消费者不直接依赖于服务提供者的组件设计方式,是一种减少类与类之间依赖的设计原则. 理解IoC的关键是明

[Spring系列01]Spring IOC/DI模拟

本文以一个简单的实例大致模拟Spring IOC/DI的运行原理,代码简单分dao,model,service三层.即:dao 与数据库的操作,增删改查等方法model 一般都是javabean对象,例如与数据库的某个表相关联.service 供外部调用,等于对dao,model等进行了包装. 程序结构图如下: 先粘贴部分代码,再进行解释: UserDAO.java package com.ctsh.dao; import com.ctsh.model.User; public interfac

Spring IOC/DI/注解

一.定义:Spring 是一个开源的控制反转(Inversion of Control,IoC/DI)和面向切面(AOP)的容器框架,它的主要目的是简化企业开发 二.实例化Spring容器: 方法一:在类路径下寻找配置文件来实例化容器 1 ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"beans.xml"}); 方法二:在文件系统路径下寻找配置文件来实例化容器 1 Applicatio

菜鸟学习spring IOC有感

 一.spring IOC思想引入 事实上对于刚開始学习的人来说,在学习IOC的时候确实有点困难,主要是掌握其思想方面存在一丢丢的障碍,可是假设可以跨过这个障碍,则可以高速掌握当中的思想了.单从字面上来讲,事实上IOC(反向控制)指的就是控制方向发生了变化.我们常常会遇到这句话:"实现必须依赖抽象,而不是抽象依赖实现."尽管这句话表达了反向控制的概念,可是对于刚開始学习的人来讲,确实不是非常好理解.接下来我们就通过一些实例去理解这些内容的含义. 首先我们创建两个类,一个用于连接数据

spring ioc DI 理解

下面是我从网上找来的一些大牛对spring ioc和DI的理解,希望也能让你对Spring ioc和DI的设计思想有更进一步的认识. 一.分享Iteye的开涛对Ioc的精彩讲解 Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想.在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制.如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们

学习spring ioc的几点建议

写在前面的话Spring 是一个轻量级的企业级应用开发框架,经年累月的迭代spring已经包含了很多模块.其中包括springBoot,springframework,springdata,springcloud,博主想写一点关于spring全家桶的东西包括spring全家桶技术应用,如何看spring官网学习,如何看spring的源码.但是写博客是个技术活,而且东西比较多,希望我可以坚持下来每天写一点.本文是基于spring5的知识分析,比如后面的源码.比如官网.如果你看到的源码和官网和博文有

Spring IoC/DI

前言 假设项目层次划分包括logic层和dao层,logic层调用dao层完成业务逻辑,dao层一般与数据库交互.定义两个组件,TestLogic和TestDao,分别操作接口ILogic和IDao,这样程序开发时需要考虑怎样管理这两个组件. 传统方式 这种方式中,当TestLogic组件需要调用TestDao组件时,直接使用关键字new IDao testDao = new TestDao(); 这种方式简单直观,但造成了对外部组件的严重依赖,程序高度耦合,效率低下.当项目需要更换组件时需要修

Spring+IOC(DI)+AOP概念及优缺点

Spring pring是一个轻量级的DI和AOP容器框架. 说它轻量级有一大部分原因是相对与EJB的(虽然本人从没有接触过EJB的应用),重要的是,Spring是非侵入式的,基于spring开发的应用一般不依赖于spring的类. 容器:Spring是个容器,因为它包含并且管理应用对象的生命周期和配置.如对象的创建.销毁.回调等. 框架:Spring作为一个框架,提供了一些基础功能,(如事务管理,持久层集成等),使开发人员更专注于开发应用逻辑. Spring的优点1.降低了组件之间的耦合性 ,

spring IOC/DI容器的理解

参与者:应用程序和spring正向:现在的程序方向,A对象要使用B对象,现在是A里面直接创建B的实例,然后调用.publc class A{ void t1(){ new B().t2();  }}public class B{void t2(); 简而言之,就是程序需要什么.就由程序主动去获取需要的资源,这个方向就是正向.容器是用来创建和装配对象,并管理对象生命周期的.对于应用程序而言,就是被动实例化和被动接受依赖了.装配:在spring容器内拼凑bean叫作装配.装配bean的时候,你是在告