java生成xml方法_逆向工程生成的Mapper.xml以及*Example.java详解

逆向工程生成的接口中的方法详解

在我上一篇的博客中讲解了如何使用Mybayis逆向工程针对单表自动生成mapper.java、mapper.xml、实体类,今天我们先针对mapper.java接口中的部分方法进行测试,以了解其作用。

先看表结构。。。

c5cffe7d865822e18e50e27ef5ae03c2.png

从下图可以看到MBG根据数据表自动生成了很多方法,基本可以满足我们日常开发需求,我从中挑选几个测试。

64e051cff4c0fc408bcd3d1a8bb13e6e.png

1、添加数据

添加有insert,insertSelective两个方法。insert方法会把你传入对象的每一个属性的值(没有设置就按默认值)添加到对应的数据表中的列中。而insertSelective方法会把传入对象的非空属性值添加到数据表,如果为空就不添加,这个打开mapper.xml查看对应的sql语句就可以看出来它们的区别。

3f1418e1c4dda63cf9368b4d68c03abc.png

5ad1bbb7a9fa0f3e569530e284fd4fce.png

就这么简单,数据表中就多了一条数据。

2、根据主键查询

这都很简单,直接贴图

a2e6f085cf158dd00db96cf79ffb3aaf.png

根据主键删除也是一个道理,在此就不再赘述。

3、自定义查询(*Examp.java的作用)

首先要创建EmployExample对象,用来获取criteria对象(Criteria是EmployExample类的一个静态的成员内部类),然后就可以使用criteria对象构造查询条件。

比如我们要查询名字为“Richard”的员工信息。

390f47d356d0e993ddcdff534da7f226.png

这里根据条件查询的结果可能是多条,所以我们用list接收。

4、自定义条件更新

需求:假如Richard离职了,Tom 接替他的工作。需要把名字为“Richard"的这条数据中的名字和邮箱修改为Tom和Tom的邮箱(不清楚Richard表中对应的id)。

这个时候如果不在xml中新建sql,就需要先查询出对应数据,再修改对应字段,避免对不需要修改的字段重新赋值。在我这张表中还好,如果不需要修改的字段太多,手动为每个属性赋值就会很麻烦。

64abcdc27aea7fd2bea064b3c5d41c9e.png

d2fa13be389ca41fb2bb805a9cdf6028.png

这样就OK了。熟悉了这几个方法,其他还有很多方法依次类推也就容易理解了。

我也是初学者,写博客主要是为了自我总结,如果有人可以从中学到点东西,那我很欣慰,如果有人觉得其中有什么不足还望不吝赐教。要是想喷我也可以,不过麻烦喷具体点,我也会很欣慰。

∧_∧::

(´・ω・`)::

/⌒ ⌒)::

/へ__ / /::

(_\\ ミ)/::

| `-イ::

/y  )::

// /::

/ /::

( く:::

|\ ヽ:::


版权声明:本文为weixin_26804345原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。