小小程序员
BlogJava
|
首页
|
发新随笔
|
发新文章
|
|
|
管理
spring如何引用properties文件里的配置
1.PropertyPlaceholderConfigurer类
它是把属性中的定义的变量(var)替代,spring的配置文件中使用${var}的占位符
<
beans
>
<
bean
id
="configBean"
class
="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
>
<
property
name
="location"
>
<
value
>
db.properties
</
value
>
</
property
>
</
bean
>
<
bean
id
="dataSource"
class
="org.apache.commons.dbcp.BasicDataSource"
destroy-method
="close"
>
<
property
name
="driverClassName"
><
value
>
${jdbc.driverClassName}
</
value
></
property
>
<
property
name
="url"
><
value
>
${jdbc.url}
</
value
></
property
>
<
property
name
="username"
><
value
>
${jdbc.username}
</
value
></
property
>
<
property
name
="password"
><
value
>
${jdbc.password}
</
value
></
property
>
</
bean
>
</
beans
>
db.properties文件
jdbc.driverClassName=org.hsqldb.jdbcDriver
jdbc.url=jdbc:hsqldb:hsql://production:9002
jdbc.username=sa
jdbc.password=root
2.PropertyOverrideConfigurer类
跟PropertyPlaceholderConfigurer功能一样,不过用法不一样.不用占位符,在属性文件中
直接定义属性的值,这样就允许有默认值
<
beans
>
<
bean
id
="configBean"
class
="org.springframework.beans.factory.config.PropertyOverrideConfigurer"
>
<
property
name
="location"
><
value
>
db.properties
</
value
></
property
>
</
bean
>
<
bean
id
="dataSource"
class
="org.apache.commons.dbcp.BasicDataSource"
destroy-method
="close"
>
<
property
name
="driverClassName"
><
value
>
org.hsqldb.jdbcDriver
</
value
></
property
>
<
property
name
="url"
><
value
>
jdbc:hsqldb:hsql://production:9002
</
value
></
property
>
<
property
name
="username"
><
value
>test
</
value
></
property
>
<
property
name
="password"
><
value
>123456
</
value
></
property
>
</
bean
>
</
beans
>
db.properties文件
dataSource.username=admin
dataSource.password=9527
在bean实例时,admin,9527将替代test,123456
3其他
1)如果需要引用多个属性,将
configBean
属性改为
<
property
name
="locations"
>
<
list
>
<
value
>
db.properties
</
value
>
<
value
>
db1.properties
</
value
>
</
list
>
</
property
>
2)在ApplactionContext中是自动调用BeanFactoryPostProcessor接口的,如果要在BeanFactory中使用,必须手动添加:
XmlBeanFactory factory
=
new
XmlBeanFactory(
new
FileSystemResource(
"
beans.xml
"
));
PropertyPlaceholderConfigurer cfg
=
new
PropertyPlaceholderConfigurer();
cfg.setLocation(
new
FileSystemResource(
"
jdbc.properties
"
));
cfg.postProcessBeanFactory(factory);
发表于 2006-06-07 02:40
~小Q
阅读(1827)
评论(0)
编辑
收藏
所属分类:
『
Spring
』
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
图解spring mvc
Quartz的cron表达式
在spring利用javamail,quartz定时发送邮件
spring对java远程调用的简化(三)之HTTPinvoker
spring对java远程调用的简化(二)之Hessian,Burlap
spring对java远程调用的简化(一)之RMI
spring中事务的属性
事务的特点以及spring提供事务管理器的简介
ProxyFactoryBean属性介绍
spring中基础核心接口介绍
<
2006年6月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
公告
spring-谁与争锋
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔分类
『
eclipse
』(2)
(rss)
『
Flash
』(1)
(rss)
『
JavaScript
』(1)
(rss)
『
Maven
』(1)
(rss)
『
Spring
』(17)
(rss)
『
springside
』(1)
(rss)
『
汇编
』(4)
(rss)
『
计划
』(1)
(rss)
相册
spring
Blog
论坛
积分与排名
积分 - 62465
排名 - 841
最新评论
1. re: 在spring利用javamail,quartz定时发送邮件[未登录]
感觉不错吗、
--xiaoxiao
2. re: JavaScript中的arguments,callee,caller,call,appy
不错啊
--artwl
3. re: JavaScript中的arguments,callee,caller,call,appy[未登录]
注意,arguments[0] 是对的。arguments是一个Object。
--你好
4. re: JavaScript中的arguments,callee,caller,call,appy
评论内容较长,点击标题查看
--zhangsir199
5. re: Maven的eclipse插件使用的flash教程[未登录]
除了插件是真的之外,其他怎么全是假的?
--王子