博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MyBatis Generator作为maven插件自动生成增删改查代码及配置文件例子
阅读量:7286 次
发布时间:2019-06-30

本文共 5533 字,大约阅读时间需要 18 分钟。

什么是MyBatis Generator

MyBatis Generator (MBG) 是一个Mybatis的代码生成器,可以自动生成一些简单的CRUD(插入,查询,更新,删除)操作代码,model代码,及mapper配置文件;

如何配置MyBatis Generator

代码生成器(MBG)是由一个XML配置文件驱动,主要告诉MBG以下三件事

  • 如何连接到数据库
  • 生成什么对象,以及如何生成它们
  • 那些表生成对象

具体如何配置,可以参考如下链接,已经有很详细的说明了:

这里给出本Demo的配置,以及相应的注释,如下:

其实官网有很全的注释,想要了解更多配置,最好参考官网。

如何运行MyBatis Generator

有以下四种运行方式:

  • 从 使用 XML 配置文件
  • 作为 使用 XML 配置文件
  • 作为
  • 从另一个 使用 XML 配置文件

个人比较推荐作为maven插件运行,方便集成,部署。

MyBatis Generator例子

 新建一个maven工程,编写pom.xml文件,如下,主要是添加mybatis-generator-maven-plugin插件:

4.0.0
cn.edu.hdu.mbgdemo
mbgdemo
0.0.1-SNAPSHOT
jar
mbgdemo
http://maven.apache.org
UTF-8
junit
junit
3.8.1
test
org.mybatis.generator
mybatis-generator-core
1.3.2
${project.name}
src/main/java
org.apache.maven.plugins
maven-compiler-plugin
3.3
1.7
1.7
UTF-8
org.apache.maven.plugins
maven-jdeps-plugin
3.0.0
jdkinternals
test-jdkinternals
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.2
true
true
src/main/resources/generatorConfig-demo.xml
mysql
mysql-connector-java
5.1.30
Generate MyBatis Artifacts
generate

然后编写BaseDao和BaseModel,添加一些共性部分的代码用于被子类继承,如下:

public interface BaseDao
{ List
selectAll(); int delete(String id); T select(String id); int insert(T record); int update(T record);}
public class BaseModel implements Serializable {    /**     * ID     */    private String id;    /**     * 是否有效     */    private Boolean valid;    /**     * 由谁创建     */    private String createBy;    /**     * 创建时间     */    private Date createTime;    /**     * 最后修改者     */    private String updateBy;    /**     * 最后修改时间     */    private Date updateTime;    public String getId() {        return id;    }    public void setId(String id) {        this.id = id;    }    public Boolean getValid() {        return valid;    }    public void setValid(Boolean valid) {        this.valid = valid;    }    public String getCreateBy() {        return createBy;    }    public void setCreateBy(String createBy) {        this.createBy = createBy;    }    public Date getCreateTime() {        return createTime;    }    public void setCreateTime(Date createTime) {        this.createTime = createTime;    }    public String getUpdateBy() {        return updateBy;    }    public void setUpdateBy(String updateBy) {        this.updateBy = updateBy;    }    public Date getUpdateTime() {        return updateTime;    }    public void setUpdateTime(Date updateTime) {        this.updateTime = updateTime;    }}

编写配置文件generatorConfig-demo.xml,前面部分已经给出了,这里就不贴了,按官网来配置即可。

最后执行mybatis-generator:generate命令即可;

执行前与执行后,可以发现自动生成了Dao代码,model代码,mapper配置文件:

            

 这里可以看下自动生成的mapper配置文件,如下,可见mbg可以帮助我们大大提高开发效率,而且还可以尽量减少人为错误:

delete from demo_user where id = #{id,jdbcType=VARCHAR}
insert into demo_user (id, name, address ) values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR} )
update demo_user set name = #{name,jdbcType=VARCHAR}, address = #{address,jdbcType=VARCHAR} where id = #{id,jdbcType=VARCHAR}

当然,我们也可以自己往dao添加一些方法,然后在mapper配置文件里添加对应的配置信息。

Demo源码

 

转载地址:http://ovpjm.baihongyu.com/

你可能感兴趣的文章
svn安装
查看>>
动态容器 数组 api
查看>>
抽取IPA包里的所有图片,包括.car压缩包中的文件
查看>>
DFS lock handle等待事件
查看>>
PowerDesigner 反转Java代码生成类图
查看>>
iOS 分割线设置
查看>>
MyBatis insert 返回主键的方法
查看>>
分布式文件系统FastDFS原理介绍
查看>>
IOS基础知识
查看>>
ubuntu 13.10 SVN配置(ubuntu通用)
查看>>
vim常用技巧
查看>>
关于继承类执行构造函数的顺序问题
查看>>
ps详解
查看>>
SpringMVC用responsebody标签返回json的时候Error406
查看>>
Python开发SVN批量提交命令脚本
查看>>
关于IE的bug(CSS)
查看>>
Linux NFS服务器详解
查看>>
Tomcat invalid LOC header (bad signature)
查看>>
永久关闭selinux
查看>>
修改nginx服务的默认用户
查看>>