首先,咱們須要有不一樣的配置文件 java
其次,咱們須要在pom.xml中進行配置mysql
<!-- 構件羨慕所須要的信息 --> <build> <!-- 使用的插件列表 --> <plugins> <!-- plugin元素包含描述插件所須要的信息 --> <plugin> <!-- 數據庫映射類生成的插件 --> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>${mybatis-generator.version}</version> <configuration> <!-- 詳細信息和覆蓋 --> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <!-- 該插件的依賴 --> <dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>${mybatis-generator.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> </dependencies> </plugin> <!-- 這是maven插件的插件 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <!-- 在構建生命週期中執行一組目標的配置。每一個目標可能有不一樣的配置。 --> <executions> <!-- execution元素包含了插件執行須要的信息 --> <execution> <!-- 執行目標的標識符,用於標識構建過程當中的目標,或者匹配繼承過程當中須要合併的執行目標 --> <id>copy-resources</id> <!-- 綁定了目標的構建生命週期階段,若是省略,目標會被綁定到源數據裏配置的默認階段 --> <!-- 在default生命週期的 validate階段就執行resources插件的copy-resources目標 --> <phase>validate</phase> <!-- 配置的執行目標 --> <goals> <goal>copy-resources</goal> </goals> <!-- 做爲DOM對象的配置 --> <configuration> <!-- 指定resources插件處理資源文件到哪一個目錄下 --> <outputDirectory>${project.build.outputDirectory}</outputDirectory> <!-- 也能夠用下面這樣的方式(指定相對url的方式指定outputDirectory) <outputDirectory>target/classes</outputDirectory> --> <!-- 待處理的資源定義 --> <overwrite>true</overwrite> <!-- 二進制文件的複製 --> <nonFilteredFileExtensions> <!-- <nonFilteredFileExtension>p12</nonFilteredFileExtension> --> </nonFilteredFileExtensions> <resources> <resource> <!-- 指定resources插件處理哪一個目錄下的資源文件 --> <directory>src/main/conf/${env}</directory> <targetPath></targetPath> <!-- 指定不須要處理的資源 --> <!-- <excludes> <exclude>WEB-INF/*.*</exclude> </excludes> --> <filtering>true</filtering> </resource> </resources> </configuration> <inherited></inherited> </execution> </executions> </plugin> </plugins> <!-- 定位打包配置文件 --> <resources> <resource> <directory>src/main/resources</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> </resource> <!-- 用於正確打包repository裏的xml文件 --> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> </includes> </resource> </resources> <finalName>ROOT</finalName> </build> <!-- 這裏就是開始進行分類配置,不一樣的環境,咱們給他不一樣的id,這個id與截圖中的文件夾名稱相同,由於打包的時的打包語句中會有該id,id和哪一個對應,就使用哪一個配置環境 --> <profiles> <!-- 開發環境,默認激活 --> <profile> <id>dev</id> <properties> <env>dev</env> </properties> <activation> <!--默認啓用的是dev環境配置 --> <activeByDefault>true</activeByDefault> </activation> </profile> <!-- 測試環境 --> <profile> <id>test</id> <properties> <env>test</env> </properties> </profile> <!-- 生產環境 --> <profile> <id>prod</id> <properties> <env>prod</env> </properties> </profile> <!-- 預發佈環境 --> <profile> <id>uat</id> <properties> <env>uat</env> </properties> </profile> </profiles>
配置好了以後,在打包的時候寫入對應的關鍵字,也就是配置文件中的profile的id,就能夠讀取對應的配置文件了。sql