Mybatis自动生成器的一些总结
Mybatis自动生成器
对于使用过mybatis生成器的小伙伴应该都知道,使用生成器可以一键生成xml文件和mapper(dao)文件,包括我们的entity,方便快捷,而且mybatis生成器自带crud的api操作,减少了我们重复造轮子的操作。但是在使用过程中难免会碰到一些小小的坑,一下是我总结的使用过程中的一些操作。
1、碰到非驼峰命名的操作时
当我们使用非驼峰命名的时候,也就是说跟数据库字段保持一致时,需要在generatorConfig.xml中加上去以下代码块:
2、当数据库表中含有文本类型(text,longtext,mediumtext)等字段时
当数据库中存在这几种字段的时候,mybatis生成器对这些字段做了特殊的处理;
注:(以下方法全部存在于mybatis自动生成的mapper层中)
mybatis会对这种字段类型做出特殊处理,所以在mapper层mybatis也是有相对应的接口:
对于单个对象查询的时候,通过这样子查询可以将包含以上文本类型的字段显示出来。
在通过example条件拼接的时候进行查询,用的是这个方法进行查询。
在对单个对象根据主键进行修改的时候,就是通过这个方法进行修改,否则这个对象中的文本字段属性不能进行修改操作。
3、添加操作后返回主键
在Hibernate中可以用saveOrUpdate中可以直接进行新增或者修改,Hibernate中的这个方法其实还是根据了MySQL中定义的主键来进行新增或者修改,hibernate会认为你的主键存在了,那么它会采用更新。但如果你使用save,那么hibernate直接插入数据,mybaits中可以通过添加成功的主键来进行操作。
在中间表中做添加的操作处理我们需要将主表中的信息进行返回,也需要主键的返回。
所以在业务逻辑中的判断,我们需要在新增的方法中去进行将主键返回。在添加成功之后。
注:(以上针对于MySQL中设置自增的主键,id并不是字段名,keyProperty只是取id的key值)
最后:以上是在使用mybatis自动生成器中所操作过的内容,如果有哪里没有提及到的地方,还请各位大佬补充和指教,作者在这里谢过各位大佬!
Everyone have a good dream,If you want,and do it,The dream will come true In the fruture.