spring第一课,beans配置(上)
2015-10-23 11:05
239 查看
1.通过property配置bean
2.通过property配置内部bean
3.通过构造器配置bean
4.装配集合属性
(注:集合属性还可以是配置map集合,也可以是配置props,操作类似,各位可以自行研究。)
5如果想为属性设置null值,可以如下操作
6.可以使用p命名空间进行配置bean操作
<!-- 配置一个 bean --> <bean id="helloWorld" class="com.atguigu.spring.helloworld.HelloWorld"> <!-- 为属性赋值 --> <property name="user" value="Jerry"></property> </bean> <!-- 配置一个 bean --> <bean id="helloWorld2" class="com.atguigu.spring.helloworld.HelloWorld"> <!-- 为属性赋值 --> <!-- 通过属性注入: 通过 setter 方法注入属性值 --> <property name="user" value="Tom"></property> </bean>
<!-- 配置 bean --> <bean id="dao5" class="com.atguigu.spring.ref.Dao"></bean> <bean id="service" class="com.atguigu.spring.ref.Service"> <!-- 通过 ref 属性值指定当前属性指向哪一个 bean! --> <property name="dao" ref="dao5"></property> </bean>
2.通过property配置内部bean
<!-- 声明使用内部 bean --> <bean id="service2" class="com.atguigu.spring.ref.Service"> <property name="dao"> <!-- 内部 bean, 类似于匿名内部类对象. 不能被外部的 bean 来引用, 也没有必要设置 id 属性 --> <bean class="com.atguigu.spring.ref.Dao"> <property name="dataSource" value="c3p0"></property> </bean> </property> </bean>
3.通过构造器配置bean
<!-- 若一个 bean 有多个构造器, 如何通过构造器来为 bean 的属性赋值 --> <!-- 可以根据 index 和 value 进行更加精确的定位. (了解) --> <bean id="car" class="com.atguigu.spring.helloworld.Car"> <constructor-arg value="KUGA" index="1"></constructor-arg> <constructor-arg value="ChangAnFord" index="0"></constructor-arg> <constructor-arg value="250000" type="float"></constructor-arg> </bean> <bean id="car2" class="com.atguigu.spring.helloworld.Car"> <constructor-arg value="ChangAnMazda"></constructor-arg> <!-- 若字面值中包含特殊字符, 则可以使用 DCDATA 来进行赋值. (了解) --> <constructor-arg> <value><![CDATA[<ATARZA>]]></value> </constructor-arg> <constructor-arg value="180" type="int"></constructor-arg> </bean>
4.装配集合属性
<!-- 装配集合属性 --> <bean id="user" class="com.atguigu.spring.helloworld.User"> <property name="userName" value="Jack"></property> <property name="cars"> <!-- 使用 list 元素来装配集合属性 --> <list> <ref bean="car"/> <ref bean="car2"/> </list> </property> </bean> <!-- 声明集合类型的 bean --> <util:list id="cars"> <ref bean="car"/> <ref bean="car2"/> </util:list> <bean id="user2" class="com.atguigu.spring.helloworld.User"> <property name="userName" value="Rose"></property> <!-- 引用外部声明的 list --> <property name="cars" ref="cars"></property> </bean>
(注:集合属性还可以是配置map集合,也可以是配置props,操作类似,各位可以自行研究。)
5如果想为属性设置null值,可以如下操作
<bean id="dao2" class="com.atguigu.spring.ref.Dao"> <!-- 为 Dao 的 dataSource 属性赋值为 null, 若某一个 bean 的属性值不是 null, 使用时需要为其设置为 null(了解) --> <property name="dataSource"><null/></property> </bean>
6.可以使用p命名空间进行配置bean操作
<bean id="user3" class="com.atguigu.spring.helloworld.User" p:cars-ref="cars" p:userName="Titannic"></bean>
相关文章推荐
- hadoop1 eclipse插件编译
- eclipse中svn冲突解决
- Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目教程
- Eclipse中使用SVN
- Java注意的地方
- Java输入流
- spring发送Email
- Spring mvc中前台表单自动绑定实体类(不用注释)
- springMVC 启动时 加载数据
- dubbo异常 DubboProtocol.createServer(DubboProtocol.java:331)
- Spring Boot的两种使用方式
- myeclipse优化
- java.lang.IllegalArgumentException: Negative time
- spring-org.springframework.beans.factory.BeanDefinitionStoreException及相关介绍
- Java 多维数组遍历
- Spring--quartz中cronExpression配置说明 (注意?说明)
- ElasticSearch学习2_Java version:1.7.0_51 suffers from critical bug及ES对JDK版本要求
- JAVA学习之 将xml导入到数据库
- Java ConcurrentModificationException 异常分析与解决方案(顶)
- java客户端和vc程序通信时的编码问题