依赖注入依赖注入到底是为了解决什么问题的

依赖注入  时间:2021-01-13  阅读:()

java依赖注入 到底是什么啊??? 有什么用处吗 ?? 该在什么时候用嘞!!! 求大神指导啊 谢谢

依赖注入是Spring的思想,在使用Spring进行开发时,可以将对象交给spring进行管理,在初始化时spring创建一批对象,当你需要用的时候只要从spring的容器中获取对象,而不用自己去new,当然在对象创建的时候可以注入另一个对象。

比如A,B两个对象都由spring管理,A中持有对B的引用,那么spring在生成A对象的时候就已经吧B对象的一个实例给到A了,当你在A中用到B的时候直接使用就可以了。

spring的依赖注入是什么意思

如果代码里到处都有new XXX,那你的代码是和实现类耦合的。

用Spring注入,我们可以只依赖接口,这对日后修改或替换实现类都有好处。

Spring最主要是让代码和实现解藕,具体依赖让调用方决定,从而获得最大的价值。

如何理解依赖注入?

人有时候需要用手机打电话,需要用到手机的dialUp方法。

传统的写法是这样:Java code public class Person{ public boolean makeCall(long number){ Mobile mobile=new Mobile(); return mobile.dialUp(number);}} 也就是说,类Person的makeCall方法对Mobile类具有依赖,必须手动生成一个新的实例new Mobile()才可以进行之后的工作。

依赖注入的思想是这样,当一个类(Person)对另一个类(Mobile)有依赖时,不再该类(Person)内部对依赖的类(Moblile)进行实例化,而是之前配置一个beans.xml,告诉容器所依赖的类(Mobile),在实例化该类(Person)时,容器自动注入一个所依赖的类(Mobile)的实例。

接口:Java code public Interface MobileInterface{ public boolean dialUp(long number);}Person类:Java code public class Person{ private MobileInterface mobileInterface; public boolean makeCall(long number){ return this.mobileInterface.dialUp(number);}public void setMobileInterface(MobileInterface mobileInterface){ this.mobileInterface=mobileInterface;}}在xml文件中配置依赖关系Java codespring的依赖注入是什么意思Spring 能有效地组织J2EE应用各层的对象。

不管是控制层的Action对象,还是业务层的Service对象,还是持久层的DAO对象,都可在Spring的 管理下有机地协调、运行。

Spring将各层的对象以松耦合的方式组织在一起,Action对象无须关心Service对象的具体实现,Service对 象无须关心持久层对象的具体实现,各层对象的调用完全面向接口。

当系统需要重构时,代码的改写量将大大减少。

什么是依赖注入?

依赖注入是spring框架中的解耦的一种策略,称为DI或IOC(控制反转),主要有set方式(提供set和get方法)和constractor(构造方法)方式,它使得类与类之间以配置文件的形式组织在一起,而不是硬编码的方式,例如classA 中用到了classB如果写代码的话是new 一个classB,而用依赖注入的方式则是在applicationContext.xml里面写两个 <bean id="id1" class="A"><property name="B" ref="id2"></bean> <bean id="id2" class="B"></bean>,就是在类A里原来需要new 的地方就不需要写了,

依赖注入到底是为了解决什么问题的

没有依赖注入前,你都是硬编码方式,new对象,然后赋值给其他对象,让他们能相互认识和协作。

这里面最痛苦的就是你要代码方式管理他们的生命周期。

依赖注入,提供了装配能力,框架负责new对象,以及把他们组织起来,你唯一需要做的就是调用业务方法。

阿里云金秋上云季,云服务器秒杀2C2G5M年付60元起

阿里云(aliyun)在这个月又推出了一个金秋上云季活动,到9月30日前,每天两场秒杀活动,包括轻量应用服务器、云服务器、云数据库、短信包、存储包、CDN流量包等等产品,其中Aliyun轻量云服务器最低60元/年起,还可以99元续费3次!活动针对新用户和没有购买过他们的产品的老用户均可参与,每人限购1件。关于阿里云不用多说了,国内首屈一指的云服务器商家,无论建站还是学习都是相当靠谱的。活动地址:h...

快云科技:夏季大促销,香港VPS7.5折特惠,CN2 GIA线路; 年付仅不到五折巨惠,续费永久同价

快云科技怎么样?快云科技是一家成立于2020年的新起国内主机商,资质齐全 持有IDC ICP ISP等正规商家。我们秉承着服务于客户服务于大众的理念运营,机器线路优价格低。目前已注册用户达到5000+!主营产品有:香港弹性云服务器,美国vps和日本vps,香港物理机,国内高防物理机以及美国日本高防物理机!产品特色:全配置均20M带宽,架构采用KVM虚拟化技术,全盘SSD硬盘,RAID10阵列, 国...

DiyVM:50元/月起-双核,2G内存,50G硬盘,香港/日本/洛杉矶机房

DiyVM是一家比较低调的国人主机商,成立于2009年,提供VPS主机和独立服务器租用等产品,其中VPS基于XEN(HVM)架构,数据中心包括香港沙田、美国洛杉矶和日本大阪等,CN2或者直连线路,支持异地备份与自定义镜像,可提供内网IP。本月商家最高提供5折优惠码,优惠后香港沙田CN2线路VPS最低2GB内存套餐每月仅50元起。香港(CN2)VPSCPU:2cores内存:2GB硬盘:50GB/R...

依赖注入为你推荐
vista系统重装Vista系统的重装的步骤,有系统恢复盘sourcegear请问高手这是什么“dynamsoft sourceanywhere for vss”,做项目的时候用的,我是新手不知道这是干什么。怎么在qq空间里添加背景音乐怎么在QQ空间里免费添加背景音乐????伪静态静态与伪静态的区别?数据库损坏数据库坏了怎么办创维云电视功能很喜欢创维云电视,它到底有哪些独特功能?虚拟专用网虚拟专用网适用于什么行业网站优化方案网站优化方案应该从哪些方面去分析?gbk编码表gbk内码表怎么看三星s8什么时候上市三星s8什么时候上市 三星s8上市时间
服务器租赁 新网域名 到期域名查询 132邮箱 息壤备案 mediafire 20g硬盘 老左博客 香港新世界电讯 天猫双十一秒杀 嘟牛 有益网络 刀片服务器是什么 赞助 什么是服务器托管 网络空间租赁 爱奇艺vip免费试用7天 广州服务器 idc查询 中国电信宽带测速器 更多