SpringDataJpa相关(一)

SpringDataJpa相关(一)

public interface UserRepository extends JpaRepository

public interface JpaRepository<T, ID extends Serializable>
        extends PagingAndSortingRepository<T, ID>, QueryByExampleExecutor<T> {

    List<T> findAll();

    List<T> findAll(Sort sort);

    List<T> findAll(Iterable<ID> ids);

    <S extends T> List<S> save(Iterable<S> entities);

    void deleteInBatch(Iterable<T> entities);

    void deleteAllInBatch();

    T getOne(ID id);

还有一些是这些封装的接口没办法实现的,但是springdataJpa可以用特殊的关键字查询,相当于一条条sql ,如下

public interface UserRepository extends JpaRepository<Users, Long> {
    /**
     * 根据手机号查询,相当于select * from users where phone= ?
     * @param phone
     * @return
     */
    List<Users> queryUserByPhone(String phone);

    /**
     * 根据用户的名字和手机号查询
     * sql相当于 select * from users where name=? and phone =?
     * @param name
     * @param phone
     * @return
     */
    List<Users> queryUserByNameAndPhone(String name,String phone);

    /**
     * 根据明细或者手机号查询
     * sql 相当于 select * from users where name =? or phone =?
     * @param name
     * @param phone
     * @return
     */
    List<Users> queryUserByNameOrPhone(String name,String phone);

    /**
     * 根据添加时间区间查询用户
     * @param minCreateAt
     * @param maxCreateAt
     * @return
     */
    List<Users> queryUserByCreateAtBetween(Long minCreateAt,Long maxCreateAt);

    /**
     * 查询用户年龄小于某个值的用户列表
     * sql相当于 select * from users where age < ?
     * @param age
     * @return
     */
    List<Users> queryUserByAgeLessThan(Integer age);

    /**
     * 查询用户年龄大于某个值的用户列表
     * sql 相当于 select * from users where age > ?
     * @param age
     * @return
     */
    List<Users> queryUserByAgeGreaterThan(Integer age);

    /**
     * 查询用户添加时间大于某个时间之后的用户列表
     * sql 相当于 select * from users where create_at > ?
     * @param createAt
     * @return
     */
    List<Users> queryUserByCreateAtAfter(Long createAt);

    /**
     *查询用户添加时间在小于时间之后的用户列表
     * sql 相当于 select * from users where create_at < ?
     * @param createAt
     * @return
     */
    List<Users> queryUserByCreateAtBefore(Long createAt);

    /**
     * 查询用户手机号不为空的用户列表
     * sql 相当于 select * from users where phone is null
     * @return
     */
    List<Users> queryUserByPhoneIsNull();

    /**
     * 查询用户手机号不为空的列表
     * select * from users where phone is null
     * @return
     */
    List<Users> queryUserByPhoneIsNotNull();
   /**
     * 按照名字like查询
     * sql 相当于 select * from users where name like ?
     * @param name
     * @return
     */
    List<Users> queryUserByNameLike(String name);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值