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

使用spring数据搜索嵌套对象,非法尝试取消引用路径源

邢良才
2023-03-14

我使用spring数据jpa,我有这些类(每个类都有id…未显示)

public class HOV{

    @ManyToOne(optional = false, fetch = FetchType.LAZY, cascade = {CascadeType.MERGE, CascadeType.PERSIST})
    @JoinColumn(name = "vehicle_type_id")
    private VehicleTypes vehicleType;
    ...
}

public class VehicleTypes{

    @OneToMany(mappedBy = "vehicleType")
    private List<Vehicles> vehicles = new ArrayList<>();

}

所以在hov存储库中,我尝试通过vehiclesId进行搜索

List<HOV> findByVehicleTypeVehiclesId(Integer id);

原因:组织。springframework。豆子。工厂BeanCreationException:创建名为“hOVRepository”的bean时出错:调用init方法失败;嵌套异常为java。lang.IllegalArgumentException:未能为方法公共抽象java创建查询。util。列出com。lcm。存储库。HOV存储库。findByVehicleTypeVehiclesId(java.lang.Integer)!非法尝试取消对基本类型的路径源[null.vehicleType.vehicles]的引用

共有1个答案

杭志泽
2023-03-14

我认为,在您的情况下,最好自己提供一个查询,例如:

@Query("select h from HOV h join h.vehicleType vt left join vt.vehicles v where v.id = ?1")
List<HOV> findWithQuery(Integer vehicleId);
 类似资料:
  • 问题内容: 我正在尝试跟随hql查询执行 但它显示 问题答案: 是一个。因此,它没有名为的属性。 是this 元素 的一个属性。 您可以通过 加入 集合 而不是取消引用 来解决此问题:

  • 问题内容: 我正在使用Nest Elastic并使用Head插件为布尔搜索构建查询,我正在合并多个查询 有关数据库结构和弹性映射的注释 数据库中的每个文档都链接到特定的profileId,后者又具有多个属性 每个文档都有与其关联的多个属性值 在此查询中,我要获取具有特定配置文件和属性值> 30的所有文档,同时要记住,此属性应仅具有ID 2。 SQL查询: 从文档d内部联接attributeValu

  • 我对elasticsearch和spring数据elasticsearch非常陌生,在查询嵌套对象时遇到了一些问题。 我使用ElasticSearch存储库在ElasticSearch中保存一个嵌套模型实例。因此,elasticsearch中只有一个条目包含所有数据,据我所知,这意味着我有一个嵌套文档。 我需要使用Criteria实现一个相对复杂的查询来迭代构建查询。当我尝试使用点表示法访问嵌套属

  • 我正在尝试使用NEST c#客户端搜索我的弹性搜索嵌套对象。我的索引名称是”,我的”字段。 这是我的班级: 现在我的web应用程序看起来像这样: 这里是我需要搜索的单词。 我在浏览器的搜索框(网络表单)中输入它。 搜索关键字可能包含任何需要与我的表人员中的任何字段的值匹配。 如果搜索关键字与嵌套文档匹配,则应返回确切的嵌套文档。 我不知道我的嵌套查询有问题,或者我实际上不知道如何使用嵌套查询来执行

  • 问题内容: 我有2节课: 我正在尝试按模型查询人。即使表之间的连接很清楚,运行以下代码也会 失败 : 错误是: 任何想法如何解决该问题? 问题答案: 当实体之间的关系已经定义时,可以使用以下语法:

  • 我有一个班级结构 我使用数据绑定,房间和匕首。我得到编译错误为找不到类数据库组件,可能是因为房间不允许持久化的嵌套对象。为了启用,我使用了@嵌入式注释,但仍然得到相同的错误。但是如果我使用@Ignore注释,指示不处理该字段的Room;编译正在成功进行。 请参阅https://developer.android.com/topic/libraries/architecture/room.html#