小编Ram*_*far的帖子

我们如何使用mongoTemplate为Mongodb Collection实现分页

我是mongoDb中的菜鸟,我需要为任何特定的集合实现Pagination,例如说

我有一个Collection Foo,我有一个Fucntion,它返回Foo集合中的所有记录

public List<Foo> getFoo(){

}
Run Code Online (Sandbox Code Playgroud)

但我需要通过实现分页从Foo中获取记录如何通过使用mongoTemplate Spring数据mongodb实现这一目标?

java pagination mongodb mongodb-query

7
推荐指数
2
解决办法
1万
查看次数

如何使用spring数据mongodb mongotemplate插入嵌入文档

我需要在现有的事件文档中插入一个新轨道,以下是我的类结构

class Event
{ 
    String _id; 
    List<Track> tracks;
}

class Track
{
    String _id;
    String title;
}
Run Code Online (Sandbox Code Playgroud)

我现有的文件是

{
  "_id":"1000",
  "event_name":"Some Name"
}
Run Code Online (Sandbox Code Playgroud)

插入后文档看起来像

{
  "_id":"1000",
  "event_name":"Some name",  
  "tracks":
   [
     {
        "title":"Test titile",
     }

  ]
}
Run Code Online (Sandbox Code Playgroud)

如何使用mongoTemplate spring data mongodb将该轨道插入到我现有的文档中?

spring mongodb spring-data-mongodb

5
推荐指数
1
解决办法
7522
查看次数

如何在其中一个字段Mongo Db中检索具有最大值的文档

任何人都可以告诉我如何在其中一个字段Mongo Db中检索具有最大值的文档.使用mongoTemplate类

这是一个例子

{
    "_id" : "post 1",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 5
}
{
    "_id" : "post 2",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 9
}
{
    "_id" : "post 3",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 8
}
Run Code Online (Sandbox Code Playgroud)

所以我想要以下结果

{
    "_id" : "post 2",
    "author" : "Bob",
    "content" : "...",
    "page_views" : 9
}
Run Code Online (Sandbox Code Playgroud)

最大page_views的记录

java mongodb spring-data-mongodb

3
推荐指数
1
解决办法
3247
查看次数

如何在单个查询对象 Mongodb Spring 数据中添加 or &amp; 和 Criteria 子句

我想同时将 or & 和子句添加到我的查询对象中,但我不断收到以下错误

由于 com.mongodb.BasicDBObject 的限制,您不能添加第二个“空”条件?

例如

query.addCriteria(new Criteria().orOperator(Some Critera);


 query.addCriteria(new Criteria().andOperator(Some Critera);
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我解决这个问题吗?

细节:

实际上,我尝试解析以下 json 并基于该解析的 json 构建动态查询

{
  "query":{

    "where":[{

              "or":[
              {
                 "fieldName":"address1","fieldValue":"Dummy address1",

                 "operator":"equal"
              }

            ],
            "and":[{
                  "fieldName":"version","fieldValue":"1",

                 "operator":"equal"

             }]
           }
        ]
   }
}
Run Code Online (Sandbox Code Playgroud)

因此,您可以建议我使用 mongoTemplate spring 数据将 json 解析为 Mongodb 查询的其他方法

这是我的解析代码

if(null != eventSearch.getQuery())
        {

            if(null != eventSearch.getQuery().getWhere() && eventSearch.getQuery().getWhere().size() > 0)
            {

                for (Where whereClause : eventSearch.getQuery().getWhere()) {

                      if(null != whereClause.getOr() && whereClause.getOr().size() > 0){

                          List<org.springframework.data.mongodb.core.query.Criteria> orCriterias = new ArrayList<org.springframework.data.mongodb.core.query.Criteria>(whereClause.getOr().size());

                          for (Field …
Run Code Online (Sandbox Code Playgroud)

java spring mongodb spring-data-mongodb

3
推荐指数
1
解决办法
1万
查看次数

我怎样才能动态创建标准Mongodb Spring数据mongo模板

我需要动态创建一个标准,但我有问题,我如何动态建立标准.

我需要完全一样,这里建立动态查询与Spring数据MongoDB的标准,但同时,我为我的标准列表转换为指定者作为其一直在说,orCriteria不具备条件的支持[我得到一个错误]

到目前为止,这是我的努力

这是我的查询结构

{
  "query":{

    "where":[{

              "or":[
              {
                 "fieldName":"title","fieldValue":"Demo Event NEW YORK IIII22222",

                 "operator":"equal"
              },
              {
                 "fieldName":"createdBy","fieldValue":"system",

                 "operator":"equal"
              }
            ]
           }
        ]
   }
} 
Run Code Online (Sandbox Code Playgroud)

这是我解析它来创建标准

 if(null != eventSearch.getQuery())
            {

                if(null != eventSearch.getQuery().getWhere() && eventSearch.getQuery().getWhere().size()> 0)
                {

                    for (Where whereClause : eventSearch.getQuery().getWhere()) {

                          if(null != whereClause.getOr() && whereClause.getOr().size() > 0){ 

                              for (Field field: whereClause.getOr()) {

                                  if(field.getOperator().equalsIgnoreCase(QueryOperator.IS))
                                  {
// So i need to append an or Condition to main query for each or object in my query can anyone …
Run Code Online (Sandbox Code Playgroud)

spring mongodb spring-data-mongodb

0
推荐指数
1
解决办法
3525
查看次数