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

JPA Projection@OneTomany不工作“找不到适当的构造函数”

冉伯寅
2023-03-14

我有一个很大的实体类,有很多很多的字段,还有一个投影类,它应该是这个大实体的一部分。

除了@OneTomany字段之外,所有的东西都运行得很好。@OneTomany字段应该是一个地址列表,但当将其转换为投影类时,我总是得到错误“无法定位适当的构造函数[...]预期参数为:long,[...],***.Entity.Address”。

转换器正在搜索单个address对象,而不是address对象列表,我不明白为什么。我使用了lombok@data和@allargsconstructor,所以Getter和Setter应该在那里。

@Entity
@Data
public class House implements Serializable {

    @Id
    @Column(name = "ID", precision = 5)
    private Long id;

    @OneToMany
    @JoinColumn(name = "HouseID")
    private List<Address> identAdressen;
}

/// ----------------
@Data
@AllArgsConstructor
public class HouseView {
    private Long objnr;
    private List<Address> identAdressen;
}

当我移除HouseView类中的“列表”时,只要只有单个地址,它就可以工作,但当有多个地址时,它也会崩溃。

我不明白为什么他试图找到一个只有一个address-object的HouseView-Constructor,而这两个类中都有地址列表。

共有1个答案

有权
2023-03-14

让我们试着不使用龙目岛,看看它是否管用

 类似资料:
  • 问题内容: 我正在实现他们文档中提供的firebase示例。我遇到此错误: com.fasterxml.jackson.databind.JsonMappingException:没有为类型[简单类型,类com.XYZ。$ BlogPost]找到合适的构造函数:无法从JSON对象实例化(需要添加/启用类型信息吗?) 这是我的代码: 我在同一件事上经历了很多问题,说要包含反序列化JSON所需的空构造

  • 问题内容: 我是Java的新手,正在尝试为Minecraft制作一个mod,但我不知道如何解决此错误: 这是我的代码: 这是怎么回事,我正在尝试使字符串“ Username”重定向到另一个类。 问题答案: Java编译器告诉您不能构造对象,因为您对构造函数的调用与任何已知的构造函数都不匹配。 具体来说,编译器发现了两个构造函数: 但您致电给: 都不匹配。

  • 我正在尝试将本机SQL结果映射到我的POJO。下面是配置。我在用Spring。 这是我的课 这里我是怎么称呼它的 但说到线

  • 我的程序是用Java8写的,当我使用LocalDateTime的类型时,它会给我以下错误: 没有为类型[simple type,class java.time.LocalDateTime]找到合适的构造函数:无法从JSON对象实例化(缺少默认构造函数或创建者,或者可能需要添加/启用类型信息?) 在[来源:[B@5976fe6f; 行:1,列:80](通过引用链:com.boot.framwork.

  • 我在运行代码时得到了这个错误,我在跟踪treehouse Build a blog reader android应用程序,现在我得到了这个错误 错误:(120,52)错误:找不到适合ArrayAdapter(MainListActivity.GetBlogPostStask,int,String[])的构造函数ArrayAdapter.ArrayAdapter(Context,int,int)不适

  • 问题内容: 我的MyBatis映射有问题。我有一个像这样的领域类: 一个映射器类,具有如下方法: 在数据库中,三列的类型分别为Number,Timestamp和Clob,并且名称与类字段中的名称相同。 当我使用此方法时,我得到一个: ExecutorException:在[MyClass;中找不到构造函数。 匹配[java.math.BigDecimal,java.sql.Timestamp,or