"多对一"属性类型不应是容器



我有这个类:

import org.springframework.security.core.userdetails.UserDetails;
@Entity
@Table(name="t_user")
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class User implements Serializable, UserDetails {
@Override
public Collection<? extends GrantedAuthority> getAuthorities() {
return null;
}
..
}

但是我有一个编译错误:

'Many To One' attribute type should not be a container 

@ManyToOne应该注释字段而不是集合。对于集合字段,右侧注释为@OneToMany

所以如果你有

@ManyToOne
private List<Something> list;

应该是

@OneToMany
private List<Something> list;

因为错误说manyToOne不应该是集合/列表,而应该是单个ojbect

@ManyToOne
Somthing somthing; // but not list

1-@ManyToOne在Hall classe:中注释一个字段

@ManyToOne
private Cinema cinema;

2-@OneToMany在Cinema classe:中这样注释一个集合

@OneToMany(mappedBy ="cinema")
private Collection<Hall> halls;
@OneToMany(cascade = CascadeType.ALL)
@JoinColumn(name = "user_id", referencedColumnName = "user_id")
private List<Address> address;

既然是一对多的关系,你必须这样做,另一边是一个东西的列表,即列出一些

最新更新