首页 > 其他分享 >依赖注入DI

依赖注入DI

时间:2023-07-13 17:13:26浏览次数:37  
标签:容器 依赖 DI 对象 作用域 Bean 注入

  • 依赖 : 指Bean对象的创建依赖于容器 . Bean对象的依赖资源

  • 注入 : 指Bean对象所依赖的资源 , 由容器来设置和装配(即注入)

构造器注入

Set方式注入!

扩展注入方式

  • p命名空间注入 :

 导入约束 : xmlns:p="http://www.springframework.org/schema/p"
<!--P(属性: properties)命名空间 , 属性依然要设置set方法-->
<bean id="user" class="com.kuang.pojo.User" p:name="狂神" p:age="18"/>
  • c 命名空间注入 :

 导入约束 : xmlns:c="http://www.springframework.org/schema/c"
<!--C(构造: Constructor)命名空间 , 属性依然要设置set方法
把有参构造器加上,这里也能知道,c 就是所谓的构造器注入-->
<bean id="user" class="com.kuang.pojo.User" c:name="狂神" c:age="18"/>

 

Bean作用域

  • 单例模式(Spring默认机制)

  • 原型模式:一个bean定义对应多个对象实例,每次从容器中get的时候才会创建一个新对象

 <bean id="account" class="com.foo.DefaultAccount" scope="prototype"/>  
或者
<bean id="account" class="com.foo.DefaultAccount" singleton="false"/>
  • request、session等作用域仅在基于web的应用中使用

标签:容器,依赖,DI,对象,作用域,Bean,注入
From: https://www.cnblogs.com/hmzblogs/p/17551483.html

相关文章

  • ckeditor粘贴word图片且图片自动上传组件
    ​ 当前功能基于PHP,其它语言流程大抵相同。大概流程:1.将docx文件上传到服务器中2.使用PHPoffice/PHPword实现将word转换为HTML3.将HTML代码返回并赋值到编辑器中 1编辑器配置修改1.1新增上传wordjson配置在ueditor\php\config.json中新增如下配置:     /*......
  • Reading Skills
    HowtoreadquicklybuteffectivelyInacademiccontextsyouwillhavemuchtoread,fromthicktextbookstoacademicjournalarticles.Althoughthiscanseemoverwhelmingatfirst,youcanlearntocopebyusingvarious readingskills,aswellastrying......
  • ckeditor粘贴word图片且图片自动上传插件
    ​ 1.编辑器修改(可选)1.1在 ueditor/config.json 中添加代码块    /* 上传word配置 */    "wordActionName":"wordupload",/* 执行上传视频的action名称 */    "wordFieldName":"upfile",/* 提交的视频表单名称 */    "wordPathFormat":"/p......
  • Educational Codeforces Round 151 (Rated for Div. 2)
    D.RatingSystem题目大意玩家的初始积分为0,该玩家连续进行\(n\)场比赛,每场比赛可升高或降低玩家的积分(\(a_i\))。你可以设置一个\(k\)值,比赛过程中玩家的积分不会低于\(k\)(若有一场比赛会使玩家的积分低于\(k\),比赛后玩家的积分会被强制变为\(k\))。找到一个\(k\),使经过\(n\)......
  • 2023Tsinghua-HKUSTA G <最短路 Dijkstra>
    题目G.TreasureHuntinMaze代码Code//<堆优化dijkstra>//分别从起点和终点进行dijkstra,得到i,j到起点和终点的最短距离和最短路径数,//则最短路为dis0[x][y]+dis1[x][y],最短路径数为cnt0[x][y]*cnt1[x][y]#include<iostream>#include<algorithm>#incl......
  • ckeditor粘贴word图片且图片自动上传代码
    ​图片的复制无非有两种方法,一种是图片直接上传到服务器,另外一种转换成二进制流的base64码目前限chrome浏览器使用首先以um-editor的二进制流保存为例:打开umeditor.js,找到UM.plugins['autoupload'],然后找到autoUploadHandler方法,注释掉其中的代码。加入下面的代码://判断剪贴......
  • disown
    disown从当前的shell中移除作业。概要disown[-h][-ar][jobspec...|pid...]主要用途从当前shell的作业列表中移除全部作业。从当前shell的作业列表中移除指定的一到多个作业。从当前shell的作业列表中移除正在运行的作业。标记作业,使得它们在当前shell退出......
  • 【Azure App Service】Web Job 报错 UNC paths are not supported. Defaulting to Win
    问题描述PHP的WebJob,通过artisan来配置路径启动PHP任务,相关启动脚本如下:artisan_path="d:\\home\\site\\wwwroot";cd${artisan_path}echo"\n"pwdphpartisanschedule:run但是,在运行的时候遇见报错:[07/06/202301:57:31>0f21a2:INFO]/d/home/site/wwwroo......
  • Redis面试题
    1.什么是Redis,Redis的优缺点?Redis本质上是一个key-value类型的内存的数据库,很像memcached,整个数据库统统加载在内存当中就行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。优点:因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能快......
  • 【Redis】字符串sds
    sds,即SimpleDynamicStrings,是Redis中存储绝大部分字符串所采用的数据结构。typedefchar*sds;一、类型sds的类型包括SDS_TYPE_5,SDS_TYPE_8,SDS_TYPE_16,SDS_TYPE_32,SDS_TYPE_64五种:#defineSDS_TYPE_50#defineSDS_TYPE_81#defineSDS_TYPE_162#defineSD......