jdbc or hibernate(jpa)

来源:互联网 发布:ubuntu 没有deb命令 编辑:程序博客网 时间:2024/06/09 16:24

一直对jdbc  spring jdbc  jpa等等几个概念感到比较混乱。不知道怎么选择。结合搜索的资料整理的一下知识:

spring+jdbc    

<dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-jdbc</artifactId>        </dependency>

 优势:
 可以操作特殊的数据库模式和存储过程
 不想通过域模型访问数据库就用jdbcTemplate.低级别的访问,复杂但是强大 
 比较好调试,发现问题
 对操作有100%控制权。没有其他注入或自动生成的代码


 
 劣势
 要写很多代码
 
 
 spring+data+jdbc
 理论上是springdata +jdbc的优势结合
 至今尚无官方实现。不太活跃
 
 
 jpa
 hibernate mybatis 是具体的实现者
 优势
 缓存功能
 自动创建查询实例
 延迟加载等
 基础的crud操作简单化
 
 劣势:
 通常不太清楚到底发生了什么以及为什么,必须熟悉原理
 确保域模型和数据库完全一致
 调试困难,比较难发现问题
 
 springdata+jpa

<dependencies>  <dependency>    <groupId>org.springframework.data</groupId>    <artifactId>spring-data-jpa</artifactId>  </dependency><dependencies>

 
 整个底层更加复杂通常问题在hibernate 而不是spring data


参考

http://stackoverflow.com/questions/42470060/spring-data-jdbc-spring-data-jpa-vs-hibernate

https://www.ibm.com/developerworks/cn/opensource/os-cn-spring-jpa/

0 0
原创粉丝点击