当前位置: 首页 > 知识库问答 >
问题:

如何将数组传递给MongoRepository@query?

冯庆
2023-03-14

使用Spring数据MongoDB。我在MongoRepository上定义了这个查询:

@Query("{'type':?0, 'tags.type':?1, 'tags.softSkill.name': {$all: ?2}}")
List<Foo> findByTypeAndTags_TypeAndTags_SoftSkills(
        FooType type, TagType tagType, String[] softSkills);

由于我想使用$all运算符,我不能通过方法命名方式构建查询,所以我使用@query注释。

value expected to be of type java.util.List but is class java.lang.String toString:fooStr
@Data
@Document(collection="foes")
public abstract class Foo {
    /*...*/ 
    protected List<Tag> tags = new ArrayList<>();
}
@Data
public abstract class Tag {

    protected final TagType type;
    protected TagLevel level;

}
@Data
@EqualsAndHashCode(callSuper=true)
public class TagSoftSkill extends Tag{

    private SoftSkill softSkill;  //another pojo that has a "name" field


    public TagSoftSkill() {
        super(TagType.SOFT_SKILL);
    }


}

我已经调试了softskillsprints[foo]。我将该值修改为['foo'],但没有变化。

共有1个答案

邢勇
2023-03-14

我没提过我在用Fongo。切换到真正的蒙哥,一切都像它应该的那样工作。所以这是一个fongo问题。

 类似资料:
  • 如何在不使其成为单独变量的情况下传递数组?例如,我知道这是有效的: 但我不想让数组成为变量,因为它只在这里使用。有没有办法做到这一点:

  • 作为React课程的一部分,我正在制作一个虚拟电子商店,并希望将产品从一个组件的状态传递到功能组件并在那里显示产品属性。如何将数据从状态传递到无状态组件? 我设置了一个组件ProductList,它存储产品(从api获取)和ProductDetail,它应该显示详细信息(通过id找到产品并显示它的描述、img等)。我设置了一个pp.js,它有两个路由-列表和详细信息。 pp.js: Product

  • 问题内容: 我在烧瓶中有一个称为数组的函数,该函数接收一个列表并打印出列表中的项目: 在客户端,我想将名为str的javascript数组传递给该数组。我该怎么办?这就是我现在所拥有的,但是Flask没有读取添加的变量。有任何想法吗? 问题答案: Flask具有一个称为request的内置对象。在请求中有一个称为args的multidict。 您可以用来检索查询字符串的值。 当然,这需要一个get

  • 要将数组参数传递给函数,需指定不带方括号的数组名。例如,如果数组hourlyTemperatures声明如下: int hourlyTemperatures[24]; 则下列函数调用语句: modifyArray(hourlyTemperatutes,24); 将数组 hourlyTemperatures 及其长度传递给函数 modifyArray。将数组传递给函数时,通常也将其长度传递给函数,使

  • 问题内容: 我正在A中使用RUN指令安装rpm 但是,我想将值“ 2.3”作为参数传递。我的RUN指令应类似于: 哪里 问题答案: 您正在寻找和指导。这些是Docker 1.9中的新功能。查看https://docs.docker.com/engine/reference/builder/#arg。这将允许您添加到,然后使用构建。

  • 问题内容: 我需要在Web服务调用中将一些值从移动设备传递到服务器,因此我打算将JSON格式的所有值传递如下 以下是我的服务电话 我正在尝试通过这种方式致电上述服务 但是输出是这样的 谁能告诉我为什么我没有获得所有的价值观? 问题答案: 我建议将JSON数据作为请求传递给主体。但是,如果您仍然希望将其作为URL中的参数传递,则必须像下面这样对URL进行编码,例如: 对于前json是:-> 有关UR