IDEA en las propiedades del archivo de configuración

Desde la recuperación de derechos de producción, problemas ocurren simultáneamente: la base de datos inconsistentes y una base de datos de producción, los archivos de prueba de producción de configuración del clúster y la configuración del clúster son inconsistentes y así sucesivamente, muy incómodo ,,,
Tengo que reconocer que antes del desarrollo de la no-estándar, uh uh uh. . .
Scala frasco optó por leer el fichero de configuración encapsulado por:
Aquí Insertar imagen Descripción
(1) Nuevo y Test Pro subdirectorio en el directorio de recursos
nuevos archivos config.properties

hive.database = test

(2) modificar la pom.xml se empaquetan
nuevos perfiles

<profiles>
        <profile>
            <!-- 测试环境 -->
            <id>test</id>
            <properties>
                <profiles.active>test</profiles.active>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <!-- 生产环境 -->
            <id>pro</id>
            <properties>
                <profiles.active>pro</profiles.active>
            </properties>
        </profile>
    </profiles>

En virtud de los recursos de generación de forzado

 <resources>
            <resource>
                <directory>src/main/resources</directory>
                <excludes>
                    <exclude>test/*</exclude>
                    <exclude>pro/*</exclude>
                </excludes>
            </resource>
            <resource>
                <directory>src/main/resources/${profiles.active}</directory>
            </resource>
        </resources>

Configmanager clase (3) Packaging

import java.util.Properties
object ConfigManager {

    def main(args: Array[String]): Unit = {
        println(getConfigValue("hive.database","pro/config.properties"))
    }
    /**
      * 获取配置名称
      */
    def getConfigValue(key : String,path:String="config.properties"): String = {
    val stream =Thread.currentThread.getContextClassLoader.getResourceAsStream(path)
    val prop : Properties= new Properties()
    prop.load(stream)
    prop.getProperty(key)
    }
}

El cual se conecta mediante la modificación de la prueba pom.xml y perfiles profesionales,
pruebas de ensayo y el juego de clúster locales están bien, la solución perfecta y más problemas ambientales -

Publicados 118 artículos originales · ganado elogios 25 · Vistas de 150.000 +

Supongo que te gusta

Origin blog.csdn.net/lhxsir/article/details/90903903
Recomendado
Clasificación