目录
- 0. 你想要的
- 0.1 包下载
- 0.2 使用jh
- 1. 功能介绍
- 2. 下载安装
- 2.1 在idea中插件市场安装
- 2.2 在jetbrains插件市场下载安装
- 3. 简单使用
- 3.1 创建一个SpringBoot项目
- 3.2 配置数据库
- 3.3 一键生成实体类、mapper
0. 你想要的
0.1 包下载
- 测试系统:Windows(Windows、macOS、Linux都可用)
- 测试IDE:IntelliJ IDEA 2023.3.6
- 测试版本:MyBatisCodeHelper Pro 3.3.0+2321
-
3.3.0+2321懒人替换包:https://www.alipan.com/s/MnJZY4zBqhX
(提取码在B站搜七维大脑关注后在动态中获取,或抖音搜七维大脑关注后在第一条视频中获取)
跪求关注!!给点支持!!谢谢!!
(需要配合此文章0.2步骤jh使用) -
3.2.9懒人替换包:https://www.alipan.com/s/eWuXDTsR8Eh
(提取码在B站搜七维大脑关注后在动态中获取,或抖音搜七维大脑关注后在第一条视频中获取)
跪求关注!!给点支持!!谢谢!!
(需要配合此文章0.2步骤jh使用) -
3.2.8懒人替换包:https://www.alipan.com/s/Z1hUX46HGBL
(提取码在B站搜七维大脑关注后在动态中获取,或抖音搜七维大脑关注后在第一条视频中获取)
跪求关注!!给点支持!!谢谢!!
(需要配合此文章0.2步骤jh使用) -
3.2.7懒人替换包:https://www.aliyundrive.com/s/MXgBrtyW4S1
(需要配合此文章0.2步骤jh使用)
-
3.2.5懒人替换包:https://www.aliyundrive.com/s/uJYnGF1ffi1
(需要配合此文章0.2步骤jh使用)
-
3.2.4懒人替换包:https://www.aliyundrive.com/s/3xCstYyevQf
(需要配合此文章0.2步骤jh使用)
0.2 使用jh
-
将修改后的jar包放回MyBatisCodeHelper-Pro/lib目录下
-
重启IDEA
-
IDEA中打开设置——其他设置——MyBatisCodeHelperPro——翻到最后,点jh
4. 选择离线jh——输入下方代码——点击jh,即可。
- paidKey:jh码,随便填
- valid:是否有效,填true
- userMac:jh窗口的唯一码(不要无脑复制我的)
- validTo:有效期,时间戳,填一个很大的值即可
{"paidKey": "feimao","valid": true,"userMac": "5E-E9-1E-DA-F7-65","validTo": 4859711999000
}
1. 功能介绍
- 通过方法名(不需要方法的返回值和参数 会自动推导出来)来生成sql 可以生成大部分单表操作的sql 只需要一个方法的名字即可 会自动补全好方法的参数和返回值 和springdatajpa的语句基本一致
- xml sql几乎所有地方都有自动提示,sql正确性检测,插件会识别mybatis的一系列标签 如 include trim set where,在这些标签之后的sql可以自动提示数据库的字段,检测sql的正确性,从此不用担心sql写错
- 直接从Intellij自带的数据库或者配置一个数据库生成crud代码 自动检测好 useGeneratedkey 自动配置好模块的文件夹 只用添加包名就可以生成代码了
- xml代码格式化
- 从java类生成建表语句
- 数据库添加字段后可以继续生成,不会修改之前已经在接口或xml添加的自- - 定义的方法 无需再去进行手动的添加
- mybatis接口和xml的互相跳转 支持一个mybatis接口对应多个xml
- mybatis接口中的方法名重构支持
- xml中的 param的自动提示 if test的自动提示 resultMap refid 等的自动提示
- resultMap中的property的自动提示,检测,重构
- resultMap中column自动提示,检测
- xml中refid,resultMap等的跳转到定义
- 检测没有使用的xml 可一键删除
- 检测mybatis接口中方法是否有实现,没有则报红 可创建一个空的xml
- mybatis接口中一键添加param注解
- mybatis接口一键生成xml
- 完整的typeAlias支持
- param检测 检测#{ 中的内容是否有误
- ognl 支持 if test when test foreach bind中的自动补全,跳转和检测
- 支持spring 将mapper注入到spring中 intellij的spring注入不再报错 支持springboot
- 一键生成mybatis接口的testcase 无需启动spring,复杂sql可进行快速测试
- 一键生成表关联的join
- 一键从sql语句中 导出resultMap
免费试用: http://brucege.com/pay/view
2. 下载安装
2.1 在idea中插件市场安装
- 在idea设置中找到插件市场,搜索MyBatisCodeHelper Pro 即可找到。
2.2 在jetbrains插件市场下载安装
- 打开:https://plugins.jetbrains.com/plugin/9837-mybatiscodehelperpro
- 可以直接点击 Install to IntelliJ IDEA xxxx.x.x
- 也可以下载对应的版本,在IDEA中安装
3. 简单使用
3.1 创建一个SpringBoot项目
- 在idea中新建项目,选择Spring Initializr,输入项目名称、组等信息,点击下一步。
- 选择MySQL Driver、Spring Web、Mybatis Framework、Lombok等依赖,点击创建
- 这样一个Spring Boot项目就建好了
-依赖参考
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.2.2</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>
3.2 配置数据库
- 先选择需要连接的数据库类型,这里以MySQL为例
- 填写主机地址、端口、用户、密码等必要信息,点击确定
- 这样就算是成功了
3.3 一键生成实体类、mapper
- 在表上右键,点击 Mybatis generator
- 根据需求填写配置即可
- 生成后的项目结构文件
- 生成的实体类参考
package com.domain;public class UserTest {/*** 主键*/private Long id;/*** 用户名*/private String username;/*** 地址*/private String address;public Long getId() {return id;}public void setId(Long id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}
}
- 生成的mapper接口类参考
package com.mapper;import com.domain.UserTest;public interface UserTestMapper {int deleteByPrimaryKey(Long id);int insert(UserTest record);int insertSelective(UserTest record);UserTest selectByPrimaryKey(Long id);int updateByPrimaryKeySelective(UserTest record);int updateByPrimaryKey(UserTest record);
}
- 生成的mapper.xml文件参考
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.UserTestMapper"><resultMap id="BaseResultMap" type="com.domain.UserTest"><!--@mbg.generated--><!--@Table user_test--><id column="id" jdbcType="BIGINT" property="id" /><result column="username" jdbcType="VARCHAR" property="username" /><result column="address" jdbcType="VARCHAR" property="address" /></resultMap><sql id="Base_Column_List"><!--@mbg.generated-->id, username, address</sql><select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"><!--@mbg.generated-->select <include refid="Base_Column_List" />from user_testwhere id = #{id,jdbcType=BIGINT}</select><delete id="deleteByPrimaryKey" parameterType="java.lang.Long"><!--@mbg.generated-->delete from user_testwhere id = #{id,jdbcType=BIGINT}</delete><insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.domain.UserTest" useGeneratedKeys="true"><!--@mbg.generated-->insert into user_test (username, address)values (#{username,jdbcType=VARCHAR}, #{address,jdbcType=VARCHAR})</insert><insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.domain.UserTest" useGeneratedKeys="true"><!--@mbg.generated-->insert into user_test<trim prefix="(" suffix=")" suffixOverrides=","><if test="username != null">username,</if><if test="address != null">address,</if></trim><trim prefix="values (" suffix=")" suffixOverrides=","><if test="username != null">#{username,jdbcType=VARCHAR},</if><if test="address != null">#{address,jdbcType=VARCHAR},</if></trim></insert><update id="updateByPrimaryKeySelective" parameterType="com.domain.UserTest"><!--@mbg.generated-->update user_test<set><if test="username != null">username = #{username,jdbcType=VARCHAR},</if><if test="address != null">address = #{address,jdbcType=VARCHAR},</if></set>where id = #{id,jdbcType=BIGINT}</update><update id="updateByPrimaryKey" parameterType="com.domain.UserTest"><!--@mbg.generated-->update user_testset username = #{username,jdbcType=VARCHAR},address = #{address,jdbcType=VARCHAR}where id = #{id,jdbcType=BIGINT}</update>
</mapper>
- 也可以生成service层和controller层,这里不再演示,都是中文界面
官方文档参考:https://gejun123456.github.io/MyBatisCodeHelper-Pro