Korzystanie z właściwości Maven settings.xml w kontekście Spring

Mam Mavensettings.xml plik w moim~/.m2 informator; To wygląda tak:

<settings>
    <profiles>
        <profile>
            <id>mike</id>
            <properties>
                <db.driver>org.postgresql.Driver</db.driver>
                <db.type>postgresql</db.type>
                <db.host>localhost</db.host>
                <db.port>5432</db.port>
                <db.url>jdbc:${db.type}://${db.host}:${db.port}/dbname</db.url>
            </properties>
        </profile>
    </profiles>
    <activeProfiles>
        <activeProfile>mike</activeProfile>
    </activeProfiles>
    <servers>
        <server>
            <id>server_id</id>
            <username>mike</username>
            <password>{some_encrypted_password}</password>
        </server>
    </servers>
</settings>

Chciałbym użyć tych właściwości dwukrotnie

Raz w Maven'sintegration-test&nbsp;faza ustawiania i niszczenia mojej bazy danych. Używając filtrowania Maven, działa to doskonale.Po raz drugi podczas uruchamiania mojej aplikacji Spring, co oznacza, że ​​muszę zastąpić te właściwości w moimservlet-context.xml&nbsp;plik podczas Maven'sresources:resources&nbsp;faza. Dla właściwości w górnej częścisettings.xml, Jak na przykład${db.url}, to działa dobrze.Nie wiem, jak zastąpić moją nazwę użytkownika bazy danych i (odszyfrowane) hasło na wiosnęservlet-context.xml&nbsp;plik.

Odpowiednia część mojegoservlet-context.xml&nbsp;plik wygląda tak:

<bean id="myDataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
    <property name="driverClassName"><value>${db.driver}</value></property>
    <property name="url"><value>${db.url}</value></property>
    <property name="username"><value>${username}</value></property>
    <property name="password"><value>${password}</value></property>
</bean>

Ostatecznym celem dla każdego programisty jest posiadanie własnych ustawień Maven (i bazy danych na ich własnej maszynie do testowania integracji) ... I podobna konfiguracja na serwerze Jenkins. Nie chcemy udostępniać wspólnej nazwy użytkownika / hasła / itd.