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

com.codingapi.springboot.fast.jpa.repository.DynamicNativeRepository Maven / Gradle / Ivy

package com.codingapi.springboot.fast.jpa.repository;

import com.codingapi.springboot.fast.jdbc.JdbcQueryContext;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.repository.NoRepositoryBean;

import java.util.List;
import java.util.Map;

@NoRepositoryBean
public interface DynamicNativeRepository extends BaseRepository {

    default List> dynamicNativeListMapQuery(String sql, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForList(sql, params);
    }

    default List dynamicNativeListQuery(String sql, Object... params) {
        return dynamicNativeListQuery(getEntityClass(), sql, params);
    }

    default  List dynamicNativeListQuery(Class clazz, String sql, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForList(sql, clazz, params);
    }

    default Page dynamicNativePageQuery(String sql, String countSql, PageRequest request, Object... params) {
        return dynamicNativePageQuery(getEntityClass(), sql, countSql, request, params);
    }

    default Page dynamicNativePageQuery(String sql, PageRequest request, Object... params) {
        return dynamicNativePageQuery(getEntityClass(), sql, request, params);
    }

    default  Page dynamicNativePageQuery(Class clazz, String sql, String countSql, PageRequest request, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForPage(sql, countSql, clazz, request, params);
    }

    default  Page dynamicNativePageQuery(Class clazz, String sql, PageRequest request, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForPage(sql, clazz, request, params);
    }

    default Page> dynamicNativePageMapQuery(String sql, String countSql, PageRequest request, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForPage(sql, countSql, request, params);
    }

    default Page> dynamicNativePageMapQuery(String sql, PageRequest request, Object... params) {
        return JdbcQueryContext.getInstance().getJdbcQuery().queryForPage(sql, request, params);
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy