All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.kasinf.framework.rest.repository.BaseRepository Maven / Gradle / Ivy

The newest version!
package com.kasinf.framework.rest.repository;

import com.kasinf.framework.rest.eneity.AbstractEntity;
import com.kasinf.framework.rest.support.Searchable;
import org.springframework.data.domain.Page;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.NoRepositoryBean;

import java.io.Serializable;
import java.util.List;

/**
 * @param   查询实体
 * @param  实体主键类型
 * @author lkhsh
 * 基础存储库,扩展了jpa自带的方法
 */
@NoRepositoryBean
public interface BaseRepository extends JpaRepository, JpaSpecificationExecutor {

    /**
     * 查找一个
     *
     * @param id ID
     * @return 实体
     */
    T findOne(ID id);

    /**
     * 批量删除
     *
     * @param ids id列表
     */
    void deleteInBatch(ID[] ids);

    /**
     * 条件搜索——分页
     *
     * @param searchable 搜索条件
     * @return 分页结果
     */
    Page findAll(Searchable searchable);

    /**
     * 条件搜索——不分页
     *
     * @param searchable 搜索条件
     * @return 搜索结果
     */
    List findList(Searchable searchable);

    /**
     * 查询数量
     *
     * @param searchable 搜索条件
     * @return 结果数量
     */
    long count(Searchable searchable);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy