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

win.doyto.query.service.QueryService Maven / Gradle / Ivy

package win.doyto.query.service;

import java.util.List;
import java.util.function.Function;
import java.util.stream.Collectors;

/**
 * QueryService
 *
 * @author f0rb
 */
public interface QueryService {

    List query(Q query);

    List queryIds(Q query);

    long count(Q query);

    default E get(Q query) {
        return CollectionUtil.first(query(query));
    }

    default  List query(Q query, Function transfer) {
        return query(query).stream().map(transfer).collect(Collectors.toList());
    }

    default  PageList page(Q query, Function transfer) {
        return new PageList<>(query(query, transfer), count(query));
    }

     List queryColumns(Q query, Class clazz, String... columns);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy