C命名空间 和 P命名空间注入
* P命名空间注入 对应了类属性的Set方法注入
- 需要引入头文件: xmlns:p="http://www.springframework.org/schema/p"
- 使用方法:
<!--P命名空间注入 可以直接注入类属性的值-->
<bean id="user" class="com.shi.pojo.User" p:name="施歌" p:age="18" p:address-ref="address"/> // 地址是引用的另一个bean
* C命名空间注入 对应了有参构造方法注入
- 需要引入头文件: xmlns:c="http://www.springframework.org/schema/c"
- 使用方法
<!--C命名空间注入 可以直接注入构造器形参列表的值-->
<bean id="user" class="com.shi.pojo.User" c:name="施歌" c:age="18" c:address-ref="address"/>
* 不用强制类型转换
//加载配置文件,获取容器对象。
ApplicationContext context=new ClassPathXmlApplicationContext("userBean.xml");
//在这里显式声明类以后,就不用再强制类型转换了。
User user = context.getBean("user" , User.class);
System.out.println(user);