现在谁还手敲代码? mybatis_高级_代码生成器

代码生成器

在做项目之前,需要先下载相应的MyBatis的基本包,MySql的驱动包(这个大家用过MyBatis,肯定都是有相应的文件的)。

另外,还要下载一个mybatis-generator-1.3.5.zip,在官网下载即可:

https://github.com/mybatis/generator/releases

1、使用MyBatis-generator生成代码

1.1、步骤一:创建一下新的项目(略)

创建项目,并且导入相应的jar包

1.2、步骤二:准备配置文件

直接在要目录中准备相应的配置文件,相应jar包

这里的 mybatis-generator-core-1.3.5.jar 就是从刚才官网下载下来,解压后直接拷备过来就可以使用了。

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>
    <!-- 加载jdbc的驱动,驱动的路径 -->
    <!-- 如果是eclipse的插件启动,则该地方的路径必须是绝对路径,路径中不要有中文 -->
    <classPathEntry location="E:/java/eclipse/WorkSpace/day1113/mysql-connector-java-5.1.26-bin.jar"/>
    <!--
       context:上下文  制定生成策略的
          targetRuntime : 目标运行环境
             MyBatis3   生成的sql支持几乎无限的动态where子句
             MyBatis3Simple 生成基础的CRUD操作
     -->
    <context id="development" targetRuntime="MyBatis3Simple">
       <!--
          commentGenerator : 注释的生成策略
          MBG默认会为Java字段,Java方法,XML中的sql生成注释,
          如果我们不想生成注释,可以手动设置属性阻止注释的生成
       -->
       <commentGenerator>
          <!-- 阻止注释的生成 -->
          <property name="suppressAllComments" value="true"/>
          <!-- 阻止时间戳的生成 -->
          <property name="suppressDate" value="true"/>
       </commentGenerator>

       <!-- 配置数据库的连接属性 -->
       <connectionFactory>
          <property name="driverClass" value="com.mysql.jdbc.Driver"/>
          <property name="connectionURL" value="jdbc:mysql:///mybatis"/>
          <property name="userId" value="root"/>
          <property name="password" value="main"/>
       </connectionFactory>

       <!--
         数据库中的浮点类型
           decimal
           numeric
           forceBigDecimals="false"
           MBG在生成doamin的时候会根据数据的长度自动选择java类型进行匹配数据库中decimal和numeric类型
        -->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="true"/>
        </javaTypeResolver>

        <!--
            javaModelGenerator : doamin的生成策略
            targetPackage : domain生成到哪个包下面
            targetProject : 目标的项目    项目名称/src
            eclipse的MBG插件运行,targetProject必须加项目名称
         -->
        <javaModelGenerator targetPackage="cn.itsource.domain" targetProject="day1113/src/main/java">
            <!-- 由表名和列名生成类名和属性名的时候去掉空白 -->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <!-- Mapper映射文件生成策略 -->
        <sqlMapGenerator     targetPackage="cn.itsource.mapper" targetProject="day1113/src/main/resources">
        </sqlMapGenerator>

        <!--
            Mapper接口的生成策略
            context的targetRuntime="MyBatis3Simple"
            type的值有两个可以选择:
                ANNOTATEDMAPPER  sql使用注解生成
                XMLMAPPER       sql生成到xml映射文件中
        -->
        <javaClientGenerator targetPackage="cn.itsource.mapper" type="XMLMAPPER" targetProject="day1113/src/main/java">
        </javaClientGenerator>

         <!-- 哪个table对应哪个domain -->
        <table tableName="product" domainObjectName="Product"></table>
        <table tableName="t_user" domainObjectName="User"></table>

    </context>
</generatorConfiguration>

1.3、步骤三:运行生成代码

这里咱们使用命令行来进行生成:

在该目录按住Shift键,右键鼠标选择"在此处打开命令窗口",复制粘贴生成语句的文件代码即可。

 

java -jar mybatis-generator-core-1.3.5.jar -configfile generatorConfig.xml -overwrite

这时候,我们就可以看到代码已经生成

2、使用Eclipse插件生成代码

咱们刚才是使用了命令行生成代码,其实生成代码的方式还是比较多的,如Java代码,命令行,Maven插件,Eclipse插件,现在咱们再讲一下怎么使用Eclipse插件来完成这个代码。

2.1、步骤一:下载安装Eclipse插件

https://github.com/mybatis/generator/releases

https://github.com/mybatis/generator/releases/download/mybatis-generator-1.3.5/org.mybatis.generator.eclipse.site-1.3.5.201609070108.zip

菜单找到Help,再找到Install New Software...

 

进入下面这个界面

 

然后不断点击next进行配置即可(此外需要连网)。

完成后重启Eclipse。

2.2、步骤二:修改配置

必需配置classPathEntry(写绝对路径),打到MySQL驱动位置,指定代码生成方法为UTF-8,最后,配置的targetProject路径加上项目名

<?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:可以配置多个,也不配置
    数据库驱动:这里找到相应的驱动jar包就可以了(注:不同数据库的jar不一样)
               location:里面的是路径(也可以直接写绝对路径 -> 如:E:\mybatis\mysql-connector-java-5.1.26-bin.jar)
    -->
    <classPathEntry   location="D:\tool\eclipse\workspace\mybatis-generator-demo\lib\mysql-connector-java-5.1.26-bin.jar"/>
    <context id="DB2Tables"   targetRuntime="MyBatis3Simple" >
    <property name="javaFileEncoding" value="UTF-8" />
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <jdbcConnection driverClass="com.mysql.jdbc.Driver"
                 connectionURL="jdbc:mysql:///mybatis"
                 userId="root" password="admin">
        </jdbcConnection>

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

        <javaModelGenerator targetPackage="cn.zhao.domain" targetProject="mybatis-generator-demo">
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="cn.zhao.mapping" targetProject="mybatis-generator-demo\resources">
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="cn.zhao.dao" targetProject="mybatis-generator-demo">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <table tableName="t_user" domainObjectName="User">
           <generatedKey column="id" sqlStatement="MySql" />
        </table>

    </context>
</generatorConfiguration>

 

点击生成即可:

 

猜你喜欢

转载自blog.csdn.net/weixin_42560234/article/details/84703665