「啥叫注入java」注入的意思
今天给各位分享啥叫注入java的知识,其中也会对注入的意思进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、“spring中注入是什么意思” 这里怎么理解“注入”的意思
- 2、什么是 注入类、宿主类(java)?
- 3、如何通俗的理解java的依赖注入
- 4、什么是反向注入 java
- 5、java类注入到另一个
- 6、java依赖注入是什么啊?网上好多版本?
“spring中注入是什么意思” 这里怎么理解“注入”的意思
spring通过“控制反转”实现了“依赖注入”。所谓的注入,我的理解是程序实现就像盖房子,spring允许你在类(class)里搭个框架,在配置文件中注明在什么地方用什么材料,在运行时spring按照你的配置真正向这个架子里“注入”了水泥、钢筋等等。
这在实际运用中很方便,比如你需要向日志服务器提交记录,但是日志服务器的ip地址可能会变更,你可以把ip地址写在配置文件里,这样当ip改变时,只需更改配置文件,而不需要修改类再重新编译。
什么是 注入类、宿主类(java)?
注入类是被引用的类,宿主类应该是引用注入类的类。一般用XML文件或Annotation调用,ejb3.0是使用这个比较多的框架,用这个就不用传统的jndi了,其实原理是一样的,只是现在的架构给封装好了。好像是叫IOC模式,比较好用,可以省些代码,不过引用的注入类必须是受容器管制类。
如何通俗的理解java的依赖注入
假设你编写了两个类,一个是人(Person),一个是手机(Mobile)。
人有时候需要用手机打电话,需要用到手机的callUp方法。
传统的写法是这样:
Java code
public class Person{
public boolean makeCall(long number){
Mobile mobile=new Mobile();
return mobile.callUp(number);
}
}
也就是说,类Person的makeCall方法对Mobile类具有依赖,必须手动生成一个新的实例new Mobile()才可以进行之后的工作。
依赖注入的思想是这样,当一个类(Person)对另一个类(Mobile)有依赖时,不再该类(Person)内部对依赖的类(Moblile)进行实例化,而是之前配置一个beans.xml,告诉容器所依赖的类(Mobile),在实例化该类(Person)时,容器自动注入一个所依赖的类(Mobile)的实例。
接口:
Java code
public Interface MobileInterface{
public boolean callUp(long number);
}
Person类:
Java code
public class Person{
private MobileInterface mobileInterface;
public boolean makeCall(long number){
return this.mobileInterface.callUp(number);
}
public void setMobileInterface(MobileInterface mobileInterface){
this.mobileInterface=mobileInterface;
}
}
在xml文件中配置依赖关系
Java code
bean id="person" class="Person"
property name="mobileInterface"
ref local="mobileInterface"/
/property
/bean
bean id="mobileInterface" class="Mobile"/
这样,Person类在实现拨打电话的时候,并不知道Mobile类的存在,它只知道调用一个接口MobileInterface,而MobileInterface的具体实现是通过Mobile类完成,并在使用时由容器自动注入,这样大大降低了不同类间相互依赖的关系。
java依赖注入的方法:set注入,构造方法注入,接口注入。
什么是反向注入 java
反向注入就是通过框架自动的给你的类中的一些属性赋值啊。一般都是Spring框架
1、比如Action、Service、Dao中,假设你用了Spring框架,可以让框架给你这些类中的属性自动注入值,就是初始化那个属性。
2、Spring就相当于一个大的容器,里面啥都有,你要给一个属性复制,去它里面拿就是,但是要在Spring配置文件里先配置哦。
java类注入到另一个
方法如下:
如果另一个类是在写的java文件夹下,就直接new一个对象,然后调用方法就好,如果不是在本文件夹下,就需要在代码最前面添加该包,然后new对象,最后调用方法。
java依赖注入是什么啊?网上好多版本?
spring 的ioc吗
public class Equip{ //装备
private String name; //装备名称
private String type; //装备类型,头盔,铠甲等
private Long speedPlus; //速度增效
private Long attackPlus; //速度增效
private Long defencePlus; //防御增效
// Getters Setters
...
}
public class player{ //玩家
private Equip armet; //头盔
private Equip loricae; //铠甲
private Equip boot; //靴子
private Equip ring; //指环
// Getters Setters
...
public updateEquip(Equip equip){//升级装备
if("头盔".equals(equip.getType)){
System.out.println(armet.getName() + "升级为" + equip.getName());
this.armet = equip;
}
...
}
}
在配置文件里
bean id="战神头盔" class="类全包名"
property name="name" value="战神头盔" /
property name="type" value="头盔" /
property name="speedPlus" value="2" /
property name="attackPlus" value="4" /
property name="name" value="6" /
/bean
bean id="玩家" class="类全包名"
property name="armet" ref="战神头盔" /
/bean
啥叫注入java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于注入的意思、啥叫注入java的信息别忘了在本站进行查找喔。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。