Spring XML 構成内に環境変数を挿入するにはどうすればいいですか? 質問する

Spring XML 構成内に環境変数を挿入するにはどうすればいいですか? 質問する

System.getProperty("JDBC_CONNECTION_STRING")AWSは詳しくは、次の URL を参照してください。環境変数を設定した後、すべてうまくいきました。ただし、System.getPropertySpring XML 構成コード内で呼び出すことも、リソース バンドル自体が何らかの方法でこれらの環境変数を抽出して提供する必要があるため、リソース バンドル ショートカットを呼び出すこともできません。このサンプル構成を変換して環境変数を使用するように手伝っていただけますか? :-)

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <property name="url" value="jdbc:mysql://secrethost:007/whois?autoReconnect=true" />
    <property name="username" value="bond" />
    <property name="password" value="abuginsidemistycorner" />
    <property name="initialSize" value="100" />

    <property name="minEvictableIdleTimeMillis">
        <value>300000</value>
    </property>

    <property name="timeBetweenEvictionRunsMillis">
        <value>60000</value>
    </property>

    <property name="maxIdle" value="20" />
</bean>

ここで人々が何をしているのか理解できませんでした。

Spring FileSystemResource に環境変数ベースの場所を使用できますか?最近のSpringバージョンではどれが機能しますか?

ベストアンサー1

まず、<context:property-placeholder .. />構成に要素を追加します。

<context:property-placeholder />

次に、設定でプレースホルダーを使用します。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <property name="url" value="${JDBC_CONNECTION_STRING}" />
    <property name="username" value="bond" />
    <property name="password" value="abuginsidemistycorner" />
    <property name="initialSize" value="100" />
    <property name="minEvictableIdleTimeMillis" value="30000" />
    <property name="timeBetweenEvictionRunsMillis" value="60000" />
    <property name="maxIdle" value="20" />
</bean>

プレースホルダー名が設定した変数と一致していることを確認してください。

おすすめ記事