记录Srping boot学习 JPA JDBCTemplate Mybatis
记录Srping boot学习 JPA JDBCTemplate Mybatis
感受:
- 首先说增删改查执行速度:jdbcTemplate最快快一倍吧,jpa mybatis差不多啦,但mybatis如果投机取巧返回map而不返回bean那性能还是和jdbctemolate 差不多的。
- jpa 底层用的hibernate基本的增删改查完全不用写代码。
比如 userJPA.findAll(); userJPA.save(user);
怎么做呢?1.写好user实体bean类, 然后再建一个jpa接口文件public interface UserJPA extends JpaRepository<User,Long>,JpaSpecificationExecutor<User>,Serializable {//啥也不用写就个空接口}
很简单就可用了,但很鸡肋啦,只支持基本的稍微复杂就不方便了鸡肋性能也一般。 - Mybatis 如果没有Generator这个插件的话估计是很累很累的,要生成一堆基本映射mapper文件xml java文件
在XML里面写SQL真的不友好,如果说像yml文件一样那么清新简洁那还好,xml里面就像蜘蛛网看的恶心。
性能方面如果老老实实按照面向对象bean写那就只能那样
所以我发现了一个投机方法,就是返回数据不用bean接收,直接用map 去除了数据中间转bean的性能,最后流程就和jdbc一样。
<!-- 这个方法是我自己加的尝试返回list<map> -->
<select id="selectAllUser