首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用复合查询的Neo4J - SpringData -@查询

使用复合查询的Neo4J - SpringData -@查询
EN

Stack Overflow用户
提问于 2013-12-25 12:22:31
回答 1查看 218关注 0票数 0

我对Neo4j有点陌生:我已经构建了一个使用SpringData使用Neo4j的应用程序。我有一个@NodeEntity,它包含' name‘和' year’属性,作为常用的名称和年份搜索,我在这两个字段上定义了一个复合索引:

代码语言:javascript
复制
@Getter
@Setter
@NoArgsConstructor
@ToString(of = { "name", "year" })
public abstract class BaseContent<D extends BaseContentDTO> extends BaseEntity {

    @Indexed(indexName = "search_content")
    protected String name;

    @Indexed(indexName = "search_content")
    protected Integer year;
}

我试图使用这个复合索引按名称和年份查询内容。这个查询来自Neo4j web管理,但当我尝试使用SpringData运行它时,它就不行了。

这是我在SpringData中的查询:

代码语言:javascript
复制
@Query("start movie=node:search_content(\"name={name} AND year={year}\") return movie;")
public T findByNameAndYear(@Param("name") String name, @Param("year") Integer year);

我所犯的错误:

代码语言:javascript
复制
org.apache.cxf.interceptor.Fault: null at
BadInputException

我不明白我做错了什么。我尝试过不同的变体,例如使用{0}和{1}而不是param名称,但这也没有帮助。

顺便说一句,这是Cypher查询,在web-admin中工作得很好:

代码语言:javascript
复制
start movie=node:search_content('name:Salt AND year:2010') return movie.name, movie.year;

如果我在@query ':‘而不是'=’中使用,如下所示:

代码语言:javascript
复制
@Query("start movie=node:search_content(\"name:{name} AND year:{year}\") return movie;")

我知道这个错误:

代码语言:javascript
复制
java.lang.RuntimeException: org.apache.cxf.interceptor.Fault: org.apache.lucene.queryParser.ParseException: Cannot parse 'name:{name} AND year:{year}': Encountered " "}" "} "" at line 1, column 10.
Was expecting one of:
    "TO" ...
    <RANGEEX_QUOTED> ...
    <RANGEEX_GOOP> ...
     at

我真的很感谢你的帮助,

卡梅尔

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-25 13:29:34

尝试取出您的实际查询,在()旁边查找。我的意思是,在括号内,您需要明确地提到一些值,密码将从中查找。

@Query("start movie=node:search_content(name='Matrix') WHERE movie.year={year} return movie)

这将根据索引search_content搜索所有节点,并搜索作为name='Matrix'的一个属性,但它可能具有其他值,如className='org.abc.Movie'或类似的值。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20772744

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档