• 通过Maven配置测试环境和开发环境连接不同的数据库


    通过Maven配置测试环境和开发环境连接不同的数据库

    操作上分3个步骤

    1.在数据持久层的pom中定义profiles,为开发和测试环境定义不同的profile

    <profiles>
    <profile>
    <id>dev</id>
    <activation>
    <activeByDefault>true</activeByDefault>
    </activation>
    <properties>
    <jdbc.driverClassName>com.mysql.jdbc.Driver</jdbc.driverClassName>
    <jdbc.url>jdbc:mysql://192.168.1.100:3306/test</jdbc.url>
    <jdbc.username>test</jdbc.username>
    <jdbc.password>test2011</jdbc.password>
    </properties>
    </profile>
    <profile>
    <id>test</id>
    <properties>
    <jdbc.driverClassName>com.mysql.jdbc.Driver</jdbc.driverClassName>
    <jdbc.url>jdbc:mysql://192.168.1.200:3306/test</jdbc.url>
            <jdbc.username>test</jdbc.username>
    <jdbc.password>test2011</jdbc.password>
    </properties>
    </profile>
    </profiles>


    定义id为dev的profile:jdbc.url属性为jdbc:mysql://192.168.1.100:3306/test

    定义id为test的profile:jdbc.url属性为jdbc:mysql://192.168.1.200:3306/test

    2.在数据持久层的pom中定义resources过滤

    数据库的配置放在/src/main/resources和/src/test/resources中,在pom中增加resource过滤

     1 <build>
    2 <resources>
    3 <resource>
    4 <directory>${project.basedir}/src/main/resources</directory>
    5 <filtering>true</filtering>
    6 </resource>
    7 </resources>
    8 <testResources>
    9 <testResource>
    10 <directory>${project.basedir}/src/test/resources</directory>
    11 <filtering>true</filtering>
    12 </testResource>
    13 </testResources>
    14 </build>

    3.在/src/main/resources和/src/test/resources中定义jdbc连接文件jdbc.properties

    1 jdbc.driverClassName=${jdbc.driverClassName}
    2
    3 jdbc.url=${jdbc.url}
    4
    5 jdbc.username=${jdbc.username}
    6
    7 jdbc.password=${jdbc.password}

    经过了如上3个步骤后运行mvn命令会执行id为dev的profile(由于在id为dev的配置中增加了<activeByDefault>true</activeByDefault>的配置)

    在mvn命令后增加 -Ptest运行,会执行id为test的profile。

    经过如上配置后,maven会在src/main/resources/ 和 /src/test/resources 中的文件中(即第3步骤配置的jdbc.properties)查找在profile中定义的属性(如jdbc.properties中的${jdbc.driverClassName}等等)。


     

  • 相关阅读:
    matlab 绘制条状图形
    细思恐极 天价房都被谁买去了?——如何操作?
    matlab中的containers.Map()
    林彪:怎样当好一个师长?
    matlab 怎么建立结构体数组?
    matlab中patch函数的用法
    Ubuntu 安装配置MySQL,并使用VS的Server Explorer UI界面远程管理MySQL
    CLIQUE 聚类算法以及Java实现+多线程
    R 中同步进行的多组比较的包:npmc
    基于D3JS绘制中国地图
  • 原文地址:https://www.cnblogs.com/icestone/p/2284079.html
Copyright © 2020-2023  润新知