轉自:https://www.cnblogs.com/JamKong/p/4523321.html
在applicationContext.xml文件中,使用 ${xxx} 表示的是:調用某個變量,該變量的名稱就是{xxx}里面的"xxx"。
例如:在applicationContext.xml文件中配置數據連接池
<!-- 配置數據鏈接池 --><property name="dataSource"><bean class="com.mchange.v2.c3p0.ComboPooledDataSource"><property name="jdbcUrl" value="${jdbcUrl}"></property><property name="driverClass" value="${driverClass}"></property><property name="user" value="${user}"></property><property name="password" value="${password}"></property><!-- 其它配置 --><!-- 初始化時獲取三個連接,取值應在minPoolSize與maxPoolSize之間。Default:3 --><property name="initialPoolSize" value="3"></property><!-- 連接池中保留的最小連接數。Default:3 --><property name="minPoolSize" value="3"></property><!-- 連接池中保留的最大連接數。Default:15 --><property name="maxPoolSize" value="15"></property><!-- 當連接池中的連接耗盡的時候c3p0一次同時獲取的連接數。Default:3 --><property name="acquireIncrement" value="3"></property><!--控制數據源內加載preparedStatement數量.如果maxStatements與maxStatementsPerConnection均為0,則緩存被關閉。Default:0--><property name="maxStatements" value="8"></property><!--maxStatementsPerConnection 定義了連接池內單個連接所擁有的最大緩存statements數。Default:0--><property name="maxStatementsPerConnection" value="5"></property><!-- 最大空閑時間,1800秒內未使用則連接被丟棄。若為0則永不丟棄。Default:0 --><property name="maxIdleTime" value="1800"></property></bean></property>
代碼中被標識的部分就是使用了${}的功能。它相當於Java中調用了變量名一樣。
在本例子中,這些變量來自另外一個properties文件。該properties為: jdbc.properties(主要用來存放JDBC連接數據庫的一些配置,方便下次修改,而不需要在applicationContext.xml文件中修改。)
jdbc.properties:
jdbcUrl=jdbc:mysql://localhost:3306/oadriverClass=com.mysql.jdbc.Driveruser=rootpassword=
${jdbcUrl} 中的jdbcUrl 指的就是jdbc.properties中jdbcUrl。
