IOC创建对象的方式
一.
1.IOC创建对象默认使用无参构造。
2.假设我们要使用有参构造,spring也提供了一些方法。
第一种,下标赋值
<!-- 第一种,下标赋值 --> <bean id="User" class="top.lostyou.pojo.User"> <constructor-arg index="0" value="msf"/> </bean>
第二种,属性赋值
<!-- 第二种,通过类型赋值,不建议使用(可能类型重复) --> <bean id="User" class="top.lostyou.pojo.User"> <constructor-arg type="java.lang.String" value="mod"/> </bean>
第三种,参数名构造(类似于无参构造)
<!-- 第三种,通过参数名 --> <bean id="User" class="top.lostyou.pojo.User"> <constructor-arg name="name" value="lll"/> </bean>
3.spring就好比一个容器,当他加载xml文件的时候,这个文件中所有的对象,属性都会被加载出来,只需要getBean()方法拿取就行了,并且不同的时候去拿取同一个类所得的对象是同一个,因为容器就启动后就只会加载一次,且具有唯一性。
二.spring的配置
1.别名
<alias name="User" alias="u"/>
当添加别名后,别名和原名都可以被拿取对象
2. bean 的关键字解释
<bean id="User" class="top.lostyou.pojo.User" name="u"> <constructor-arg name="name" value="test"/> </bean> <!-- id : bean的唯一标识符,也就相当于我们学的对象名 class: bean对象所对应的全限定名;包名 + 类型 name:也是别名 (限定使用的作用域是 bean 行) -->
3. impor的使用
这个import,一般用于团队开发使用,他可以将多个配置文件,导入合并为一个
假设,现在项目中有多个人开发,这三个人复制不同的类开发,不同的类需要注册在不同的bean中,我们可以利用import将所有人的beans.xml合并为一个总的!
<import resource="beans.xml"/>
使用的时候,直接使用总的配置就可以了(ApplicationContext.xml)