mybatis框架提供了非常好用的逆向工程插件,但是在使用过程中会有很多问题。
我在使用中就遇到了只生成insert和insertSeletive方法,而不生成其他根据primary key查询更新删除的方法。
解决方案:
1.检查数据库中的表是否有主键,如果没有主键是不会生成类似selectByPrimaryKey之类的方法的。
2.检查generatorConfig.xml配置文件中的table标签是否把这些属性设为了false,默认是true,如果设为了false则无法生成。
enableSelectByPrimaryKey="true"
enableUpdateByPrimaryKey="true"
enableDeleteByPrimaryKey="true"
前两点都是网上很容易找到的,第三点是真正的坑点,希望大家不要被坑了。
3.如果使用的mysql驱动是6.x的,那就无法生成,使用5.x版本的就可以生成。
顺便附上一份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>
<!--导入属性配置-->
<properties resource="datasource.properties"/>
<!--指定特定数据库的jdbc驱动jar包的位置-->
<classPathEntry location="E:/JavaWeb_WorkSpace/YYMall/src/main/resources/mysql-connector-java-5.1.41.jar"/>
<context id="default" targetRuntime="MyBatis3">
<!-- optional,旨在创建class时,对注释进行控制 -->
<commentGenerator>
<property name="suppressDate" value="tr