Spring配置补充
1. 属性文件配置数据源
第一步:配置PropertyPlaceholderConfiguer
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>classpath:jdbc.properties</value>
</property>
</bean>
第二步:使用${key}
2. JNDI配置数据源
第一步:在tomcat中导入驱动程序包
第二步:在context.xml配置文件中配置JNDI
第三步:配置数据源
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
<property name="jndiName">
<value>java:comp/env/jdbc/smbms</value>
</property>
</bean>
3. Bean的作用域
1) singleton(单例):默认
2) prototype(多例)
3) request:一次请求有效
4) session:同一个会话有效
5) global session:仅在Portlet的web应用中使用.
注意:service层和dao层使用单例
控制如果用单例注意线程安全问题(不要再控制层写属性)
单例只会创建一个实例,效率比多例高,但可能出现线程不安全问题.
多例会创建多个实例,是线程安全的,但效率比单例低.
4. 自动装配(autowire属性)
no(不自动匹配)
byType(按类型匹配)
byName(按属性名匹配)
contructor(按构造器参数的类型匹配)
5. 拆分策略
第一种:公共+每个模块一个配置文件.
第二种:公共+dao+service+controllor配置文件
6. 拆分方法
第一种:
通过ClassPathXMLApplicationContext的构造方法重载
第二种:
通过<import resource="配置文件.xml"/>