| 程序包 | 说明 |
|---|---|
| org.hswebframework.web.crud.configuration | |
| org.hswebframework.web.crud.query |
| 类和说明 |
|---|
| QueryHelper
使用DSL方式链式调用来构建复杂查询
// select a.id as `a.id` ,b.name as b.name from table_a a
// left join table_b b on a.id=b.id
// where b.name like 'zhang%'
Flux<R> = helper
.select(R.class)
.as(A::getName,R::setName)
.as(A::getId,R::setAid)
.from(A.class)
.leftJoin(B.class,spec-> spec.is(A::id, B::id))
.where(dsl->dsl.like(B::getName,'zhang%'))
.fetch();
使用原生SQL方式来构建动态条件查询
helper
.select("select * from table_a a left join table_b b on a.id=b.id",R::new)
.where(dsl->dsl.like(R::getName,'zhang%'))
.fetch();
|
| 类和说明 |
|---|
| JoinConditionalSpec |
| JoinNestConditionalSpec |
| JoinOnSpec |
| QueryAnalyzer
查询分析器,用于分析SQL查询语句以及对SQL进行重构,追加查询条件等操作
|
| QueryAnalyzer.Column |
| QueryAnalyzer.Join |
| QueryAnalyzer.Select |
| QueryAnalyzer.Table |
| QueryHelper
使用DSL方式链式调用来构建复杂查询
// select a.id as `a.id` ,b.name as b.name from table_a a
// left join table_b b on a.id=b.id
// where b.name like 'zhang%'
Flux<R> = helper
.select(R.class)
.as(A::getName,R::setName)
.as(A::getId,R::setAid)
.from(A.class)
.leftJoin(B.class,spec-> spec.is(A::id, B::id))
.where(dsl->dsl.like(B::getName,'zhang%'))
.fetch();
使用原生SQL方式来构建动态条件查询
helper
.select("select * from table_a a left join table_b b on a.id=b.id",R::new)
.where(dsl->dsl.like(R::getName,'zhang%'))
.fetch();
|
| QueryHelper.ColumnMapperSpec
列名映射构造器
|
| QueryHelper.ExecuteSpec
执行查询
|
| QueryHelper.FromSpec |
| QueryHelper.Getter
Getter接口定义,只能使用方法引用实现此接口,如:
MyEntity::getId
|
| QueryHelper.JoinSpec
表关联构造器
|
| QueryHelper.NativeQuerySpec |
| QueryHelper.SelectColumnMapperSpec |
| QueryHelper.SelectSpec |
| QueryHelper.Setter
Setter接口定义,只能使用方法引用实现此接口,如:
MyEntity::setId
|
| QueryHelper.SortSpec
排序构造器
|
| QueryHelper.WhereSpec
查询条件构造器
|
Copyright © 2016–2023. All rights reserved.