使用mybatis-generator-core自動生成代碼所遇到的問題

首先  要使用這東西 自動生成mapper  dao  entity  在pom.xml中加入如下代碼

<plugin>
   <groupId>org.mybatis.generator</groupId>
   <artifactId>mybatis-generator-maven-plugin</artifactId>
   <version>1.3.2</version>
   <configuration>
      <!--配置文件的位置-->
      <configurationFile>${basedir}/src/main/resources/generator/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>

然後idea右邊的這個如果有 如下圖標記處  說明引入成功  

第一個問題來了 如果沒有  看下倉庫是不是這個包沒下下來  把那個lastupdated文件刪了  就能重新下了

然後在resources下新建文件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>
    <!-- 數據庫驅動:選擇你的本地硬盤上面的數據庫驅動包-->
    <classPathEntry  location="G:\myRepository\mysql\mysql-connector-java\5.1.30\mysql-connector-java-5.1.30.jar"/>
    <context id="DB2Tables"  targetRuntime="MyBatis3">
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自動生成的註釋 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--數據庫鏈接URL,用戶名、密碼 -->
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://172.18.193.185:3306/sonar" userId="sonar" password="sonar">
        </jdbcConnection>
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!-- 生成模型的包名和位置-->
        <javaModelGenerator targetPackage="com.sitech.smartcity.entity" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!-- 生成映射文件的包名和位置-->
        <sqlMapGenerator targetPackage="mybatis/mysql" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!-- 生成DAO的包名和位置-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="com.sitech.smartcity.mybatis" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <!-- 要生成的表 tableName是數據庫中的表名或視圖名 domainObjectName是實體類名-->
        <table tableName="tb_rc_tableexpert_info"></table>

    </context>
</generatorConfiguration>

把上面標紅的地方改成自己的路徑  

然後點擊下圖所示的這個按鍵即可生成文件

 

第二個問題來了 這樣子點擊生成後的文件會有exmpale之類的文件  如果不想要 修改generatorConfig.xml中的表屬性爲

<table schema=""
       enableCountByExample="false"
       enableUpdateByExample="false"
       enableDeleteByExample="false"
       enableSelectByExample="false"
       selectByExampleQueryId="false"
       tableName="tb_rc_tableexpert_info">
    
</table>

 

第三個問題又來了  有的表中字段是xx_xx這種的  如果想使用駝峯命名的話  要新增屬性 

<table schema=""
       enableCountByExample="false"
       enableUpdateByExample="false"
       enableDeleteByExample="false"
       enableSelectByExample="false"
       selectByExampleQueryId="false"
       tableName="tb_rc_tableexpert_info">
    <property  name="useActualColumnNames"  value="true" />
</table>

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章