定义数据访问层
只需定义一个继承JpaRepository的接口即可:
public interface UserRepository extends JpaRepository<User, Long> {
// 定义数据访问操作的方法
}
配置使用Spring Data JPA
在Spring环境中,使用Spring Data JPA 可通过@EnableJpaRepositories注解来开启Spring Data JPA的支持。
定义查询方法
1、常规查询。根据属性名来定义查询方法
public interface UserRepository extends JpaRepository<User, Long> {
/**
* 通过用户名相等查询
*
* @param userName 用户名
* @return
*/
List<User> findByUserName(String userName);
/**
* 通过名字like查询
*
* @param userName 用户名
* @return
*/
List<User> findByUserNameLike(String userName);
/**
* 通过用户名和手机号码查询
*
* @param userName 用户名
* @param mobileNo 手机号码
* @return
*/
User findByUserNameAndMobileNo(String userName, String mobileNo);
}
排序与分页
Spring Data JPA提供了Sort类以及Page接口和Pageable接口
/**
* 根据用户类型,分页查询
*
* @param userType 用户类型
* @param pageable
* @return
*/
Page<User> findByUserType(Integer userType, Pageable pageable);
/**
* 根据用户名,排序查询
*
* @param userName 用户名
* @param sort
* @return
*/
List<User> findByUserName(String userName, Sort sort);