您可以使用.properties
文件:
<context:property-placeholder location="file:///my/cfg.properties"/>
如果文件內容是:
driver=com.mysql.jdbc.Driver
dbname=mysql:mydb
mysetting=42
您可以參考他們在Spring XML這樣的:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"><value>${driver}</value></property>
<property name="url"><value>jdbc:${dbname}</value></property>
</bean>
參考:4.8.2.1 Example: the PropertyPlaceholderConfigurer
。
您也可以注入這些屬性到自己的類:
@Service
public class MyService {
@Value("${mysetting}")
private int mysetting; //Spring will inject '42' on bean creation
//...
}
當然你也可以在這個例子中,如果你喜歡XML使用setter方法的注射像DriverManagerDataSource
中。
也看看:Spring 3.1 M1: Unified Property Management。
我想引用我的代碼中的值,而不是xml。 – Blankman 2011-12-17 20:25:50
所以我不太明白你的問題。我更新了我的答案('MyService'示例),它更接近你想要達到的目標嗎? – 2011-12-17 20:32:07
是的,這是我想要的,所以我把這個.properties文件放在哪裏?我可以有多個,因爲你似乎沒有引用任何名稱?像db.properties或myconfig.properties? – Blankman 2011-12-17 23:15:37