org.mybatis.generator.plugins.CachePlugin
这个插件是一个挺有用的插件,用来生成在XML中的<cache>元素(这个插件只针对MyBatis3/MyBatis3Simple有效哈);
很显然,这个插件需要一些配置,支持的配置属性有:cache_eviction,cache_flushInterval,cache_readOnly,cache_size,cache_type,具体就不解释了,和cache元素的属性一一对应;
很好的一点,在<table>元素中,可以通过定义property元素,来覆盖<plugin>元素中提供的默认值;
org.mybatis.generator.plugins.CaseInsensitiveLikePlugin
这个插件用来在XXXExample类中生成大小写敏感的LIKE方法(插件本身用处不大,但是我们可以通过这个插件学习给XXXExample类添加额外的方法)
org.mybatis.generator.plugins.EqualsHashCodePlugin
很明显,这个插件用来给Java模型生成equals和hashcode方法;注意下,如果Domain类有rootClass,需要重新处理下生成的代码(因为MBG是不会考虑rootClass相关内容的,甚至都不会加载rootClass,可以参考配置文件中rootClass相关说明);
org.mybatis.generator.plugins.MapperConfigPlugin
比较有用的一个插件,可以用来帮助生成一个默认的MapperConfig.xml文件骨架,在这个骨架文件中完成了本次生成的mapper.xml文件的配置;
该插件支持的配置属性有:
- fileName:配置文件名称,默认为MapperConfig.xml;
- targetPackage:配置文件所在的包,同MBG配置文件中的所有targetPackage配置;
- targetProject:配置文件所在目录,同MBG配置文件中的所有targetProject配置;
org.mybatis.generator.plugins.RenameExampleClassPlugin
这个插件可以使用正则表达式的方式来重命名生成的XXXExample类,通过配置 searchString和replaceString属性来完成(这个实现原理请参考MBG配置文件中的columnRenamingRule元素),
一个例子,比如要xxxExample改成xxxCriteria,只需要配置:
<property name="searchString" value="Example$" />
<property name="replaceString" value="Criteria" />
org.mybatis.generator.plugins.RowBoundsPlugin
这个插件可以生成一个新的selectByExample方法,这个方法可以接受一个RowBounds参数,主要用来实现分页(当然,我们后面会生成我们自己的分页查询函数),这个插件只针对MyBatis3/MyBatis3Simple有效哈;
org.mybatis.generator.plugins.SerializablePlugin
这个插件主要用来为生成的Java模型类添加序列化接口,并生成serialVersionUID字段;
有两个配置项:
- addGWTInterface:这个是针对GWT的,我们忽略;
- suppressJavaInterface:这个参数是必须要填的,我们设置为false就可以了;
org.mybatis.generator.plugins.ToStringPlugin
这个插件顾名思义,为生成的Java模型创建一个toString方法。