1.springboot data jpa启动项,依赖于springboot jdbc starter 启动项 ,因此会加载springboot jdbc starter依赖,项目中就可以即使用spring data jpa 与jdbc template
2.jpa:Java持久层API,是sun公司在java5提出的一种规范,几乎是一些列的接口。由于orm框架的多样,JDK为了实现ORM的天下归一而提出的。
- jpa规范的实现可以有Hibernate,还有EclipseLink(曾经的toplink),OpenJPA。其中对hibernate支持最强大,一般都是用hibernate最为实现。因此可以理解为jpa是规范,底层仍是用hibernate来实现。
- Spring-data-jpa:是spring集成jpa,使用jpa而生成的,因此底层是hibernate。
- jdbctemplate是spring对原始jdbc操作的封装。
- mybatis是独立的orm框架
3.Spring-data-jpa特点
- 提供ORM功能和业务逻辑功能
- 常用的功能,不需要写sql语句
- 提供自己写sql的方式
- 接口和实现类都需要放在同一个包里面
- dao一般用Repository结尾,UserRepository
- dao实现类,UserRepositoryImpl,定义的时候我们不需要去指定实现UserRepository接口,根据spring-data-jpa自动就能判断二者的关系。
-
public interface UserRepository extends JpaRepository<User, Integer>{} pub