springdatajpa 认识以及使用方式

1.spingdatajpa是什么?

  Spring Data JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套JPA应用框架(即上述的:JPA的实现产品),可使开发者用极简的代码即可实现对数据的访问和操作。它提供了包括增删改查等在内的常用功能,且易于扩展!学习并使用 Spring Data JPA 可以极大提高开发效率

  spring data jpa让我们解脱了DAO层的操作,基本上所有CRUD(增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete))都可以依赖于它来实现

  总结:springdatajpa让我们访问数据库更加方便。

2.springdatajpa怎么访问数据库

 有两种方式

  

1.基本查询

 

  基本查询也分为两种,一种是spring data默认已经实现,一种是根据查询的方法来自动解析成SQL。

 

  先生成方法

 

  spring data jpa 默认预先生成了一些基本的CURD的方法,例如:增、删、改等等

 

  1写一个类 继承JpaRepository

  

    public interface HelloRepository extends JpaRepository<User, Long> {
    }

 

2.自定义SQL查询

其实Spring data 觉大部分的SQL都可以根据方法名定义的方式来实现,但是由于某些原因我们想使用自定义的SQL来查询,spring data也是完美支持的;在SQL的查询方法上面使用@Query注解,如涉及到删除和修改在需要加上@Modifying.也可以根据需要添加 @Transactional 对事物的支持查询超时的设置

 

    @Modifying
    @Query("update User u set u.userName = ?1 where c.id = ?2")
    int modifyByIdAndUserId(String  userName, Long id);
        
    @Transactional
    @Modifying
    @Query("delete from User where id = ?1")
    void deleteByUserId(Long id);
      
    @Transactional(timeout = 10)
    @Query("select u from User u where u.emailAddress = ?1")
        User findByEmailAddress(String emailAddress);

 

 

 

 

  

 

posted @ 2019-03-29 19:15  你好烦哦  阅读(234)  评论(0编辑  收藏  举报