一. 安装教程
(1) 下载已破解的插件压缩包,一定注意校验sha1sum!!!
(2) 在IDEA中本地安装插件(不用解压直接安装那个压缩包)
(3) 激活方法:点击IDEA菜单 Tools-> MybatisCodeHelper-> offlineActivation,输入任意激活码
(4) https://pan.baidu.com/share/init?surl=kssUnaZrpPdpgkj6A0bX5w
6kxq
二. 使用教程
1.首先给IDE连接上数据库
(其实只要把url地址粘贴在最下面那个url框里面很多都自动填写了)
![](https://img.haomeiwen.com/i10743979/c57437b82c865e62.png)
2. 从数据库直接生成domain、mapper、service
![](https://img.haomeiwen.com/i10743979/123eb2f58a122447.png)
![](https://img.haomeiwen.com/i10743979/23a2f1afe6d1b85e.png)
3. 根据方法名自动生成sql,用Alt+Enter
![](https://img.haomeiwen.com/i10743979/34aa61166aed01a0.png)
4. 如果万不得已真的要自己写sql
(1) 写sql的时候,每行都有提示,同java ide
![](https://img.haomeiwen.com/i10743979/0c781fb8dd292af6.png)
在这里再附上一段动态sql中的trim的用法:
这样想,<set>、<where>这俩都是一种特殊的trim,它们的作用主要是如果后面那一堆iftest条件万一都不符合,那拼出来的sql后面就单一个where,再或者如果中间有一个符合了,那就是where and ...,怎么都是错的,trim就用来解决这种问题。
trim的格式:
<trim prefix="WHERE" prefixOverrides="AND |OR ">
...
</trim>
prefix是万一后面的条件有一个满足,前面用什么连接,prefixOverrides这个就是后面的那堆条件中间用什么连接。
以及sql id的用法:(目前不知道具体用在哪里,反正include是sql引用)
<sql id="userColumns">
................//在这里定义sql片段
</sql>
<include refid="${userColumns}"/>//然后用这种结构引用sql
(2) 你要是写错了,还有红色提示
![](https://img.haomeiwen.com/i10743979/9a03026441c53e12.png)
5. 自动生成测试
(1) 已经有了mapper,就在想测试的方法上面Alt+Enter,生成一个测试类,很简单,马上能跑
![](https://img.haomeiwen.com/i10743979/967f67e63fde1a2d.png)
(2) 或者在mapper的xml文件,对应的id左面的绿色三角形,单击一下然后就可以直接测试,可能不如上面那种
![](https://img.haomeiwen.com/i10743979/d2fe97e0e532f192.png)
6. 给mapper里面生成好的方法加@Param注解(重要)
![](https://img.haomeiwen.com/i10743979/c938ba8968c67026.png)
在这里插一段@Param注解的作用:
(1) 这个注解首先的一个作用是把方法括号里传入的参数和sql中#{}中的参数联系起来, 这两个地方名字是一致的。
(2) 如果不用这个注解那mapper方法里面用到的类型就必须是JavaBean,不能是什么String、int什么的,估计就得是一个User,然后你再#{}这里面引用这个Bean的成员变量。
另一个Mybatis常犯的错误
yml里面一般都开启了驼峰命名,java类的命名是硬性标准,必须遵守的。在这里的成员变量命名不规范极多。
7. 根据java.class生成数据库表
(1) 在java类上面Alt+Insert,生成文件
![](https://img.haomeiwen.com/i10743979/146def9a8a59f132.png)
(2)然后在这里勾选一下各种设置(勾个主键差不多了,索引不会)
![](https://img.haomeiwen.com/i10743979/c38edc1cb15f810d.png)
8. 设置详解
![](https://img.haomeiwen.com/i10743979/95c4a928306c0782.png)
网友评论