【发布时间】:2018-08-27 07:01:14
【问题描述】:
我正在尝试在 JPA 中实现 OneToOne 关联,并尝试使用 Spring Boot 和 Spring Data JPA 连接两个表。我创建了一个 Spring Boot 微服务并在我的模型中实现了一对一关联。但是当我运行代码时,出现以下错误,
Caused by: org.hibernate.AnnotationException: Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElement
这里我的第一个模型类Users.java如下,
@Entity
@Table(name = "users")
public class Users implements Serializable {
private static final long serialVersionUID = 9178661439383356177L;
@Id
@Column(name="user_id")
public Integer userId;
@Column(name="username")
public String username;
@Column(name="password")
public String password;
}
我正在使用以下代码通过控制器测试关联,
@GetMapping("/load")
public Users load() {
return (Users) userObj.findAll();
}
谁能帮忙解决这个关联问题?
【问题讨论】:
-
哪些文档告诉您在
Users类型的单个值字段上使用@OneToMany是正确的? -
哪些文档告诉您在
List类型的多值字段上使用@OneToOne是正确的? -
它不是多值类型。请检查我更新的问题。
-
错误消息清楚地显示
@OneToMany,并且在更改问题之前您有一个OneToMany。而现在你一个也没有。现在错误消息与问题无关。因此,如果您要重写问题,请打开一个新问题,而不是认为所有回答都是多余的
标签: spring-boot jpa model-associations