Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-boot-starters
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-boot-starters
提交
8227c7fe
提交
8227c7fe
编写于
9月 30, 2022
作者:
chenxiang@lab.ibiz5.com
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
NoSQL:MongoDB适配
上级
6fa0008b
变更
3
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
60 行增加
和
0 行删除
+60
-0
MongoQueryContext.java
...c/main/java/cn/ibizlab/util/filter/MongoQueryContext.java
+13
-0
IBZMongoRepository.java
...n/java/cn/ibizlab/util/repository/IBZMongoRepository.java
+11
-0
IBZMongoSimpleRepository.java
.../cn/ibizlab/util/repository/IBZMongoSimpleRepository.java
+36
-0
未找到文件。
ibizlab-boot-starter-data/src/main/java/cn/ibizlab/util/filter/MongoQueryContext.java
0 → 100644
浏览文件 @
8227c7fe
package
cn
.
ibizlab
.
util
.
filter
;
import
org.springframework.data.mongodb.core.query.Query
;
public
class
MongoQueryContext
extends
SearchContextBase
implements
ISearchContext
{
private
Query
searchCond
=
new
Query
();
public
Query
getSearchCond
(){
return
this
.
searchCond
;
}
}
ibizlab-boot-starter-data/src/main/java/cn/ibizlab/util/repository/IBZMongoRepository.java
0 → 100644
浏览文件 @
8227c7fe
package
cn
.
ibizlab
.
util
.
repository
;
import
cn.ibizlab.util.filter.MongoQueryContext
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.mongodb.repository.MongoRepository
;
public
interface
IBZMongoRepository
<
T
,
ID
>
extends
MongoRepository
<
T
,
ID
>
{
<
S
extends
T
>
Page
<
T
>
query
(
MongoQueryContext
mongoQueryContext
);
}
ibizlab-boot-starter-data/src/main/java/cn/ibizlab/util/repository/IBZMongoSimpleRepository.java
0 → 100644
浏览文件 @
8227c7fe
package
cn
.
ibizlab
.
util
.
repository
;
import
cn.ibizlab.util.filter.MongoQueryContext
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.data.mongodb.core.MongoOperations
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.data.mongodb.repository.query.MongoEntityInformation
;
import
org.springframework.data.mongodb.repository.support.SimpleMongoRepository
;
import
org.springframework.data.support.PageableExecutionUtils
;
import
java.util.List
;
public
class
IBZMongoSimpleRepository
<
T
,
ID
>
extends
SimpleMongoRepository
<
T
,
ID
>
implements
IBZMongoRepository
<
T
,
ID
>
{
private
final
MongoOperations
mongoOperations
;
private
final
MongoEntityInformation
<
T
,
ID
>
entityInformation
;
public
IBZMongoSimpleRepository
(
MongoEntityInformation
<
T
,
ID
>
metadata
,
MongoOperations
mongoOperations
)
{
super
(
metadata
,
mongoOperations
);
this
.
entityInformation
=
metadata
;
this
.
mongoOperations
=
mongoOperations
;
}
@Override
public
<
S
extends
T
>
Page
<
T
>
query
(
MongoQueryContext
mongoQueryContext
)
{
Query
query
=
mongoQueryContext
.
getSearchCond
();
query
.
with
(
mongoQueryContext
.
getPageable
());
if
(
mongoQueryContext
.
getPageSort
()!=
null
)
query
.
with
(
mongoQueryContext
.
getPageSort
());
List
<
T
>
list
=
mongoOperations
.
find
(
query
,
entityInformation
.
getJavaType
(),
entityInformation
.
getCollectionName
());
return
PageableExecutionUtils
.
getPage
(
list
,
mongoQueryContext
.
getPageable
(),
()
->
mongoOperations
.
count
(
query
,
entityInformation
.
getJavaType
(),
entityInformation
.
getCollectionName
()));
}
}
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录