本文共 707 字,大约阅读时间需要 2 分钟。
去年开始接触 spring data JPA,瞬间觉得JPA好强大,只用注解就搞定了基础的CURD,但是写复杂的sql不是很好写,尤其是JPA把人养懒了,删除都想用级联删除,还是Mybatis 轻量化的好,于是就想,为何不让mybatis拥有jpa的能力呢,把基本功能实现了就好,复杂的sql我自己写,于是百度,然后认识了svili,他有一份mybatis jpa的源码,拿过来之后试用之后欣喜若狂,这不就是我想要的吗?于是帮他改了改bug,就在自己项目上用了,从去年第一个项目试用依赖已经上了有五个项目了,也算比较稳定和功能比较全面的版本了,于是把他放出来,给大家共享。
JPA能干啥?Mybatis jpa又能干啥?
JPA就是通过注解把数据库表和DO建立联系,然后不需要写sql只需要在接口中定义方法名字即可。
比如 List<User> findByUserName(String userName) 就是根据用户名查询列表。
还可以这么写:List<User> findByUserNameLike(String userName) 模糊搜索。
这些mybatis jpa统统都支持,常见的增删改查,一对一,一对多查询,批量删除,批量插入,分页,查总数,你只需要用你的接口继承父接口即可,就不需要写一行sql 全部都帮你写了,如果你觉得某个sql 复杂 mybatis jpa帮你搞不定,你还可以手写sql与自动生成的sql配合起来一起使用。
mybatis jpa 还帮你自动生成了resultMap 你在也不用自己手写或者 user_name as userName 这么写了。
转载地址:http://cgwni.baihongyu.com/