MyBatis 三剑客 —— 代码生成器 Mybais generator

  为了简化开发,会根据数据库表 生成一些文件,自带一些简单的CRUD 操作:pojo, mapper.java, mapper.xml。

 这里 使用idea 工具 和mysql数据库的操作。
 一. 新建数据库表 user

MyBatis 三剑客 —— 代码生成器 Mybais generator_第1张图片

二.新建maven 项目

idea 工具右上角–File–new–Project
新建maven项目:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第2张图片
MyBatis 三剑客 —— 代码生成器 Mybais generator_第3张图片
MyBatis 三剑客 —— 代码生成器 Mybais generator_第4张图片
MyBatis 三剑客 —— 代码生成器 Mybais generator_第5张图片

新建后是这样的目录结构:

MyBatis 三剑客 —— 代码生成器 Mybais generator_第6张图片

这个不是完整的结构,要在main包下,新建java包和resources包

1.新建java包:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第7张图片
把java包设为根目录:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第8张图片
然后在java包下新建 com.ssmtest.pojo 和com.ssmtest.dao包
MyBatis 三剑客 —— 代码生成器 Mybais generator_第9张图片
2.新建resources 包,并标记为资源文件包,这个就跟java包一样,都是在项目包下:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第10张图片
3.resources 包下,在建一个mapper 文件夹。
最后结构如下:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第11张图片

三. 设置generator 插件

需要在pom文件里面加入mybatis generator插件(这里项目假设你已经配置了maven的路径了,没有的自己百度下怎么在idea 里面配置maven):
首先在resources 里面新建名为“generatorConfig.xml”的文件。这里文件名是固定的,这个插件会默认查找项目资源下的generatorConfig.xml 这个文件去执行,所以要放在resources 下第一层.
文件内容如下:
(有6点注意事项,查看代码的注释,根据自己的情况更改,这里因为项目结构一样,只要改下mysql的数据源就行了)




<generatorConfiguration>
    <context id="testTables" targetRuntime="MyBatis3">
        <commentGenerator>
            
            <property name="suppressAllComments" value="true" />
        commentGenerator>
        
        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                        connectionURL="jdbc:mysql://127.0.0.1:3306/ssmtest"
                        userId="root"
                        password="19868111211">
        jdbcConnection>
        
        

        
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false" />
        javaTypeResolver>

        
        <javaModelGenerator targetPackage="com.ssmtest.Pojo"
                            targetProject="src/main/java">
            
            <property name="enableSubPackages" value="false" />
            
            <property name="trimStrings" value="true" />
        javaModelGenerator>
        
        <sqlMapGenerator targetPackage="mapper"
                         targetProject="src/main/resources">
            
            <property name="enableSubPackages" value="false" />
        sqlMapGenerator>
        
        <javaClientGenerator type="XMLMAPPER"
                             targetPackage="com.ssmtest.Dao"
                             targetProject="src/main/java">
            
            <property name="enableSubPackages" value="false" />
        javaClientGenerator>
        
        <table tableName="user" domainObjectName="User"
               enableCountByExample="false"
               enableUpdateByExample="false"
               enableDeleteByExample="false"
               enableSelectByExample="false"
               selectByExampleQueryId="false">table>


    context>
generatorConfiguration>

在pom.xml 里面的标签加入插件:

 
        <plugin>
          
          <groupId>org.mybatis.generatorgroupId>
          <artifactId>mybatis-generator-maven-pluginartifactId>
          <version>1.3.2version>
          <dependencies>
            
            
            
            
            
            
            
            
            
            
            <dependency>
              <groupId>mysqlgroupId>
              <artifactId>mysql-connector-javaartifactId>
              <version>5.1.30version>
            dependency>
          dependencies>
        plugin>

到此就配置好了,然后就可以设置启动了:
MyBatis 三剑客 —— 代码生成器 Mybais generator_第12张图片
MyBatis 三剑客 —— 代码生成器 Mybais generator_第13张图片

MyBatis 三剑客 —— 代码生成器 Mybais generator_第14张图片

这里的Command line 要填入maven的命令:”mybatis-generator:generate -e”,这个命令会去执行刚才我们在pom.xml 里面配置的插件.

配置完后就可以开始执行了:

有2个方式执行:
1):
MyBatis 三剑客 —— 代码生成器 Mybais generator_第15张图片

2):
MyBatis 三剑客 —— 代码生成器 Mybais generator_第16张图片

最后看控制台里面的run
显示”Build success” 就是成功生成了,在看项目里面生成了相应文件了:

MyBatis 三剑客 —— 代码生成器 Mybais generator_第17张图片

注意:如果要重新生成,要把mapper 里面的xml文件删除了在生成,因为pojo和dao里面的会覆盖,但是xml里面的 如果不删除就会生成新的sql语句追加在后面。

你可能感兴趣的:(mybatis)