数据库、SQL查询一些方法的提取.
下载本项目,gradle clean build得到的jar包引入工程即可。本项目依赖于utils
项目已经发布至 jcenter
、mavenCentral
(1.8.6之前)和jitpack(v1.8.7开始)
【mavenCentral和jcenter】
compile 'top.jfunc.common:common-db:${version}'
compile ('top.jfunc.common:common-db:${version}'){
exclude group:'org.springframework.data'
exclude group:'org.hibernate'
}
【jitpack】
maven { url 'https://jitpack.io' }
compile 'com.gitee.xxssyyyyssxx:common-db:${version}'
compile ('com.gitee.xxssyyyyssxx:common-db:${version}'){ exclude group:'org.springframework.data' exclude group:'org.hibernate' }
一个巨好用的SQL拼写器,让你从SQL拼写的泥沼中解脱出来,不用管空格,顺序,参数处理。还支持方法连缀。
可以对SQL语句进行美化。
查询表数据,复杂的过滤在Java应用层做,SQL中只写很容易过滤的条件,基于一个事实:数据库过滤复杂条件效率不高。方法接受一个RecordFilter
,实现对Record的过滤。
@FunctionalInterface
public interface Filter<T> extends Predicate<T>{
/**
* 看一条记录是否满足条件
* @param record 一条记录
* @return 是否满足
*/
@Override
boolean test(T record);
/**
* 过滤记录
* @param records 源记录,同时也是过滤后的
* @return 满足条件的记录条数
*/
default List<T> filter(List<T> records){
Objects.requireNonNull(records);
return records.parallelStream().filter(this::test).collect(Collectors.toList());
/*Iterator<Record> iterator = records.iterator();
while (iterator.hasNext()) {
Record record = iterator.next();
boolean acc = test(record);
if(!acc){
//不满足的删除
iterator.remove();
}
}*/
}
}
处理JPA环境下的复杂SQL查询,配合QueryHelper有着奇妙的化学反应
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )