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

com.moon.spring.data.jpa.factory.RepositoryBuilder Maven / Gradle / Ivy

package com.moon.spring.data.jpa.factory;

import com.moon.spring.data.jpa.JpaRecord;
import org.springframework.data.jpa.repository.support.JpaEntityInformation;
import org.springframework.data.jpa.repository.support.JpaRepositoryImplementation;
import org.springframework.data.jpa.repository.support.SimpleJpaRepository;
import org.springframework.data.repository.core.RepositoryInformation;

import javax.persistence.EntityManager;
import java.io.Serializable;

/**
 * @param   实体类型
 * @param  主键类型
 *
 * @author moonsky
 */
public interface RepositoryBuilder, ID extends Serializable> {

    /**
     * 创建{@code Repository}
     *
     * @param repositoryInformation 接口信息
     * @param information           实体信息
     * @param em                    实体管理器
     * @param metadata              元数据:spring 上下文等
     *
     * @return Repository
     *
     * @see SimpleJpaRepository
     * @see AbstractRepositoryImpl
     * @see DataStringRepositoryImpl
     */
    JpaRepositoryImplementation newRepository(
        RepositoryInformation repositoryInformation,
        JpaEntityInformation information,
        EntityManager em,
        JpaRecordRepositoryMetadata metadata
    );
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy