mybatis逆向工具,用户程序自动生成Mapper接口以及Mapper接口所对应的xml文件
将相对应的文件包导入,[包已经全部准备在lib文件中],在source中的
generatorConfig.xml文件中添加需要的配置进行生成
<?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>
<context id="testTables" targetRuntime="MyBatis3">
<commentGenerator>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property name="suppressAllComments" value="false" />
<property name="suppressDate" value="false"/>
</commentGenerator>
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://127.0.0.1:3306/myclass?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true" userId="root"
password="a1160124552">
<property name="nullCatalogMeansCurrent" value="true"/>
</jdbcConnection>
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和
NUMERIC 类型解析为java.math.BigDecimal -->
<javaTypeResolver>
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!-- targetProject:生成PO类的位置 -->
<javaModelGenerator targetPackage="com.hzh.javaeefinwork2.entity"
targetProject=".\src">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
<!-- 从数据库返回的值被清理前后的空格 -->
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!-- targetProject:mapper映射文件生成的位置 -->
<sqlMapGenerator targetPackage="com.hzh.crm.workbench.mapper"
targetProject=".\src">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</sqlMapGenerator>
<!-- targetPackage:mapper接口生成的位置 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.hzh.crm.workbench.mapper"
targetProject=".\src">
<!-- enableSubPackages:是否让schema作为包的后缀 -->
<property name="enableSubPackages" value="false" />
</javaClientGenerator>
<!-- 指定数据库表 -->
<table tableName="classinfo" domainObjectName="ClassInfo"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false"
></table>
<!--需要新的表就添加新的表,不需要用的的时候就取消掉-->
<!--<table tableName="tbl_user" domainObjectName="User"
enableCountByExample="false" enableUpdateByExample="false"
enableDeleteByExample="false" enableSelectByExample="false"
selectByExampleQueryId="false"
></table>-->
</context>
</generatorConfiguration>
当需要生成多张表的时候,只需要添加相对应的表的信息就可以成功
代码示例如下:
package com.hzh.crm.workbench.mapper;
import com.hzh.javaeefinwork2.entity.ClassInfo;
public interface ClassInfoMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
int deleteByPrimaryKey(Integer id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
int insert(ClassInfo record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
int insertSelective(ClassInfo record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
ClassInfo selectByPrimaryKey(Integer id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
int updateByPrimaryKeySelective(ClassInfo record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table classinfo
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
int updateByPrimaryKey(ClassInfo record);
}
package com.hzh.javaeefinwork2.entity;
import java.util.Date;
public class ClassInfo {
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.id
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private Integer id;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.name
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private String name;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.gradeID
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private Integer gradeid;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.createTeacher
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private Integer createteacher;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.createTime
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private Date createtime;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database column classinfo.remark
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
private String remark;
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.id
*
* @return the value of classinfo.id
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public Integer getId() {
return id;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.id
*
* @param id the value for classinfo.id
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setId(Integer id) {
this.id = id;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.name
*
* @return the value of classinfo.name
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public String getName() {
return name;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.name
*
* @param name the value for classinfo.name
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.gradeID
*
* @return the value of classinfo.gradeID
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public Integer getGradeid() {
return gradeid;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.gradeID
*
* @param gradeid the value for classinfo.gradeID
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setGradeid(Integer gradeid) {
this.gradeid = gradeid;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.createTeacher
*
* @return the value of classinfo.createTeacher
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public Integer getCreateteacher() {
return createteacher;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.createTeacher
*
* @param createteacher the value for classinfo.createTeacher
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setCreateteacher(Integer createteacher) {
this.createteacher = createteacher;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.createTime
*
* @return the value of classinfo.createTime
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public Date getCreatetime() {
return createtime;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.createTime
*
* @param createtime the value for classinfo.createTime
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setCreatetime(Date createtime) {
this.createtime = createtime;
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column classinfo.remark
*
* @return the value of classinfo.remark
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public String getRemark() {
return remark;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column classinfo.remark
*
* @param remark the value for classinfo.remark
*
* @mbggenerated Thu Jun 16 01:36:41 GMT+08:00 2022
*/
public void setRemark(String remark) {
this.remark = remark == null ? null : remark.trim();
}
}
<?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.hzh.crm.workbench.mapper.ClassInfoMapper" >
<resultMap id="BaseResultMap" type="com.hzh.javaeefinwork2.entity.ClassInfo" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
<id column="id" property="id" jdbcType="INTEGER" />
<result column="name" property="name" jdbcType="VARCHAR" />
<result column="gradeID" property="gradeid" jdbcType="INTEGER" />
<result column="createTeacher" property="createteacher" jdbcType="INTEGER" />
<result column="createTime" property="createtime" jdbcType="TIMESTAMP" />
<result column="remark" property="remark" jdbcType="VARCHAR" />
</resultMap>
<sql id="Base_Column_List" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
id, name, gradeID, createTeacher, createTime, remark
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
select
<include refid="Base_Column_List" />
from classinfo
where id = #{id,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
delete from classinfo
where id = #{id,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.hzh.javaeefinwork2.entity.ClassInfo" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
insert into classinfo (id, name, gradeID,
createTeacher, createTime, remark
)
values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{gradeid,jdbcType=INTEGER},
#{createteacher,jdbcType=INTEGER}, #{createtime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR}
)
</insert>
<insert id="insertSelective" parameterType="com.hzh.javaeefinwork2.entity.ClassInfo" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
insert into classinfo
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="id != null" >
id,
</if>
<if test="name != null" >
name,
</if>
<if test="gradeid != null" >
gradeID,
</if>
<if test="createteacher != null" >
createTeacher,
</if>
<if test="createtime != null" >
createTime,
</if>
<if test="remark != null" >
remark,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="id != null" >
#{id,jdbcType=INTEGER},
</if>
<if test="name != null" >
#{name,jdbcType=VARCHAR},
</if>
<if test="gradeid != null" >
#{gradeid,jdbcType=INTEGER},
</if>
<if test="createteacher != null" >
#{createteacher,jdbcType=INTEGER},
</if>
<if test="createtime != null" >
#{createtime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null" >
#{remark,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.hzh.javaeefinwork2.entity.ClassInfo" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
update classinfo
<set >
<if test="name != null" >
name = #{name,jdbcType=VARCHAR},
</if>
<if test="gradeid != null" >
gradeID = #{gradeid,jdbcType=INTEGER},
</if>
<if test="createteacher != null" >
createTeacher = #{createteacher,jdbcType=INTEGER},
</if>
<if test="createtime != null" >
createTime = #{createtime,jdbcType=TIMESTAMP},
</if>
<if test="remark != null" >
remark = #{remark,jdbcType=VARCHAR},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.hzh.javaeefinwork2.entity.ClassInfo" >
<!--
WARNING - @mbggenerated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Thu Jun 16 01:36:41 GMT+08:00 2022.
-->
<!--可以在此添加自己的代码-->
update classinfo
set name = #{name,jdbcType=VARCHAR},
gradeID = #{gradeid,jdbcType=INTEGER},
createTeacher = #{createteacher,jdbcType=INTEGER},
createTime = #{createtime,jdbcType=TIMESTAMP},
remark = #{remark,jdbcType=VARCHAR}
where id = #{id,jdbcType=INTEGER}
</update>
</mapper>