Spring Data JPA: Spring提供的一个用于简化JPA开发的框架
Spring Data JPA不需要过多的关心Dao层的实现,只需关注我们继承的接口,按照一定的规则去编写我们的接口即可,spring会按照API规范动态生成我们接口的实现类进行注入,并且实现类里包含了一些常规操作的方法实现。
优点:如果使用JPA提供的接口来操作ORM框架,可以不写任何实现就能对数据库进行CRUD操作,还可以进行简单的分页,排序操作。
缺点:不能实现过于复杂的查询
当持久层的接口方法满足不了业务要求时怎么做?
当持久层的接口方法满足不了业务要求时,需要实现sql自定义,应在repository包的子包impl内编写自定义扩展类,类命名规则:“名称 + RepositoryImpl”,扩展类内的方法的名称要求与持久层的接口方法名称一致,以确保接口在动态代理时,自动查找“名称 + RepositoryImpl”中的方法。注意:实现包名是 接口包名+impl ,实现类开头也要一致,不然程序启动会报错