xml多种方法注入java(学习记录)
//这是一个xml文件,是我项目中的一个文件,我对它进行了分析 <beans.....> <bean id="" class=""> //id就是一个标识,可以被当做另一个节点里的ref,class是一个类,下面的在本类中执行 </bean> </beans> 实现呢 //* 将XML文件输出到指定的路径
这就是我的实现了,具体实现可以自行查看Spring的注入方法 下面的我转的,觉得很好
Application
spring
通过构造方法注入,就相当于给构造方法的参数传值 set注入的缺点是无法清晰表达哪些属性是必须的,哪些是可选 的,构造注入的优势是通过构造强制依赖关系,不可能实例化不 完全的或无法使用的bean。 MemberBean定义四个变量, privateStringname; privateDoublesalary; privateDeptdept; privateStringsex; 加上构造方法和toString方法:方便测试 Dept: privateStringdname; privateStringdeptno; 使用set方法注入 第一种方法:根据索引赋值,索引都是以0开头的: <bean id="memberBean"class="www.csdn.spring01.constructor.MemberBean"> <constructor-argindex="0"value="刘晓刚"/> <constructor-argindex="1"value="3500"/> <constructor-argindex="2"ref="dept"/> <constructor-argindex="3"value="男"/> 第二种方法是根据所属类型传值 这种方法基本上不怎么适用,因为一个类里可以有好几个相同基本类型的变量,很容易就混淆值传给哪一个参数了所以做好不要使用这种方法: <constructor-argtype="java.lang.String"value="刘晓刚" <constructor-argtype="java.lang.Double"value="3500"/> <constructor-argtype="www.csdn.spring01.constructor.Dept"ref="dept"/> <constructor-argtype="java.lang.String"value="男"/> 第三种方法:根据参数的名字传值:(推荐用法) 在这几种方法里我感觉这种方法是最实用的,他是根据名字来传值的,所以基本上只要名字对了,这个值就可以获取到 <constructor-argname="name"value="刘晓刚"/> <constructor-argname="salary"value="3500"/> <constructor-argname="dept"ref="dept"/> <constructor-argname="sex"value="男"/> 第四种方法:直接传值 直接给参数赋值,这种方法也是根据顺序排的,所以一旦调换位置的话,就会出现bug,这种方法已经很原始了 <constructor-argvalue="刘晓刚"/> <constructor-argvalue="3500"/> <constructor-argref="dept"/> <constructor-argvalue="男"/> </bean> <beanid="dept"class="www.csdn.spring01.constructor.Dept">
<propertyname="dname"value="北航"/> <propertyname="deptno"value="00001"/> </bean>S (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |