通過idea (maven專案)生成實體類、dao、和mybatis的mapper.xml
阿新 • • 發佈:2018-12-31
1、建立maven專案,引入以下jar包
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>demo-generator</groupId> <artifactId>demo-generator</artifactId> <version>1.0-SNAPSHOT</version> <build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version> <configuration> <!--配置檔案的位置--> <configurationFile>src/main/resources/generatorconfig.xml</configurationFile> <verbose>true</verbose> <overwrite>true</overwrite> </configuration> <executions> <execution> <id>Generate MyBatis Artifacts</id> <goals> <goal>generate</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> </dependency> </dependencies> </plugin> </plugins> </build> </project>
2、新增generatorconfig.xml配置檔案,具體內容如下:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" > <generatorConfiguration> <!-- 引入配置檔案 <properties resource="application.properties"/> --> <!-- 指定資料連線驅動jar地址 --> <classPathEntry location="E:\DbVisualizer 6..0.9\DbVisualizer 6..0.9\DbVisualizer-6.0.9\jdbc\oracle\ojdbc6.jar" /> <!-- 一個數據庫一個context --> <context id="infoGuardian"> <!-- 註釋 --> <commentGenerator > <property name="suppressAllComments" value="false"/><!-- 是否取消註釋 --> <property name="suppressDate" value="false" /> <!-- 是否生成註釋代時間戳--> </commentGenerator> <!-- jdbc連線 --> <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@132.11.111.46:1521:fghfgp" userId="admin" password="123456" /> <!-- 型別轉換 --> <javaTypeResolver> <!-- 是否使用bigDecimal, false可自動轉化以下型別(Long, Integer, Short, etc.) --> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> <!-- 生成實體類地址 --> <javaModelGenerator targetPackage="cn.bravolinks.erp.oa.server.model" targetProject="src/main/java" > <!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] --> <property name="enableSubPackages" value="false"/> <!-- 是否針對string型別的欄位在set的時候進行trim呼叫 --> <property name="trimStrings" value="true"/> </javaModelGenerator> <!-- 生成mapxml檔案 --> <sqlMapGenerator targetPackage="cn.bravolinks.erp.oa.server.mapper" targetProject="src/main/java" > <!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] --> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <!-- 生成mapxml對應client,也就是介面dao --> <javaClientGenerator targetPackage="cn.bravolinks.erp.oa.server.dao" targetProject="src/main/java" type="XMLMAPPER" > <!-- 是否在當前路徑下新加一層schema,eg:fase路徑com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] --> <property name="enableSubPackages" value="false" /> </javaClientGenerator> <!-- 配置表資訊 --> <!-- schema即為資料庫名 tableName為對應的資料庫表 domainObjectName是要生成的實體類 enable*ByExample 是否生成 example類 --> <table schema="fghfgp" tableName="OA_REWARDHOLIDAY" domainObjectName="OaRewardholiday" enableCountByExample="false" enableDeleteByExample="false" enableSelectByExample="false" enableUpdateByExample="false"> <!-- 忽略列,不生成bean 欄位 --> <ignoreColumn column="FRED" /> <!-- 指定列的java資料型別 --> <columnOverride column="LONG_VARCHAR_FIELD" jdbcType="NVARCHAR" /> </table> </context> </generatorConfiguration>
3、啟動專案,生成目錄: