利用mybatis-generator自动生成代码

来源:互联网 发布:用户画像数据建模 编辑:程序博客网 时间:2024/05/21 08:39

1、下载Generator工具

目前mybatis项目已由GoogleCode改为GitHub代码托管,到下面地址可以下载最新的mybatis-generator
https://github.com/mybatis/generator/releases

2、配置generator.xml

将下载好的zip解压到本地,可以看到里面包含了lib和docs,把lib下的mybatis-generator-core-1.3.2.jar包拷贝到一个没有中文路径的目录下,例如D:\mybatis-generator
generator.xml是配置自动生成代码所需的XML配置文件,具体规则可以在解压好的docs目录下查看,这里给出一个简单的示例(修改其中有注释的地方即可)

<?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="D:\generator\mysql-connector-java-5.1.22-bin.jar" />    <context id="DB2Tables" targetRuntime="MyBatis3">        <commentGenerator>            <property name="suppressAllComments" value="true" />        </commentGenerator>        <!-- 数据库链接URL、用户名、密码 -->        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test" userId="root" password="">        </jdbcConnection>        <javaTypeResolver>            <property name="forceBigDecimals" value="false" />        </javaTypeResolver>        <!-- 生成模型的包名和位置 -->        <javaModelGenerator targetPackage="org.test.model" targetProject="D:\generator\src">            <property name="enableSubPackages" value="true" />            <property name="trimStrings" value="true" />        </javaModelGenerator>        <!-- 生成的映射文件包名和位置 -->        <sqlMapGenerator targetPackage="org.test.mapping" targetProject="D:\generator\src">            <property name="enableSubPackages" value="true" />        </sqlMapGenerator>        <!-- 生成DAO的包名和位置 -->        <javaClientGenerator type="XMLMAPPER" targetPackage="org.test.dao" targetProject="D:\generator\src">            <property name="enableSubPackages" value="true" />        </javaClientGenerator>        <!-- 要生成那些表(更改tableName和domainObjectName就可以) -->        <table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />        <table tableName="role" domainObjectName="Role" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false" />        <!-- 其它表格 -->    </context></generatorConfiguration>

当然根据不同数据库,还需要一个对应的数据库驱动jar包,这里是mysql数据库,对应的jar为mysql-connector-java-5.1.22-bin.jar ,同样放到D:\mybatis-generator目录下。
最后再在该目录下新建一个名为src的空文件夹即可,里面存放的就是生成的dao层、 model层 和 mapping映射文件。
最终目录结构如下:
这里写图片描述

3、生成代码

在cmd命令提示符中切换到D:\generator目录下,或者在D:\generator目录下按住shift再点击右键即可在此处打开命令窗口,输入以下命令:

java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite

出现如下图所示即表示成功。
这里写图片描述

这时进入src文件可以看到生成好的代码
这里写图片描述

至此所有步骤就结束了。
自动生成的dao只有最基本的增、删、改、查功能,实际项目中需要自己手动添加方法。

public interface UserMapper {    int deleteByPrimaryKey(String id);    int insert(User record);    int insertSelective(User record);    User selectByPrimaryKey(String id);    int updateByPrimaryKeySelective(User record);    int updateByPrimaryKey(User record);}
0 0
原创粉丝点击