1.<context:property-placeholder/> :用于从外部属性文件中获取Bean的配置
<context:property-placeholder location="db.properties"></context:property-placeholder> <bean class="com.mchange.v2.c3p0.ComboPooledDataSource" id="dataSource"> <property name="user" value="${user}"></property> <property name="password" value="${password}"></property> <property name="driverClass" value="${diverClass}"></property> <property name="jdbcUrl" value="${jdbcUrl}"></property> </bean>
2.SpEL的使用事例
<bean class="com.ddf.spring.beans.spel.Person" id="person"> <property name="name" value="汤姆"></property> <!--引用其他bean的属性--> <property name="city" value="#{address.city}"></property> <!--引用其他对象--> <property name="car" value="#{car}"></property> <!--逻辑运算--> <property name="info" value="#{car.price >= 300000 ? '金陵' : '白领'}"></property> </bean>
3.配置bean的方法
<!--1.静态工厂方法--> <bean id="car0" class="com.ddf.spring.beans.factory.StaticCarFactory" factory-method="getCar"> <constructor-arg value="奥迪"></constructor-arg> </bean> <!--2.实例工厂方法--> <bean class="com.ddf.spring.beans.factory.InstanceCarFactory" id="carFactory"></bean> <bean id="car1" factory-bean="carFactory" factory-method="getCar"> <constructor-arg value="长安"></constructor-arg> </bean>
4. exclude-filter 子节点指定排除哪些指定表达式的组件(assignable:类)
<context:component-scan base-package="com.ddf.spring.beans.annotation"> <context:exclude-filter type="assignable" expression="com.ddf.spring.beans.annotation.repository.UserRepository"/> </context:component-scan>
5. include-filter 子节点指定排除哪些表达式的组件,需要配合use-default-filters使用(annotation)
<context:component-scan base-package="com.ddf.spring.beans.annotation" use-default-filters="false"> <context:include-filter type="annotation" expression="org.springframework.stereotype.Repository"/> </context:component-scan>