@Entity
@Table(name = "teachers")
@PrimaryKeyJoinColumn(name = "user_id")
public class Teacher extends User {
@Size(min = 3, max = 50)
@Column(name = "first_name")
private String firstName;
@Size(min = 3, max = 50)
@Column(name = "middle_name")
private String middleName;
@Size(min = 3, max = 50)
@Column(name = "last_name")
private String lastName;
@OneToMany(fetch = FetchType.LAZY,mappedBy = "teacher")
@JsonManagedReference
private Set<Address> addresses = new HashSet<>(0);
Getter Setter...
}
@Entity
@Table(name = "address")
public class Address {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "address_id")
private Long addressId;
@ManyToOne (fetch = FetchType.LAZY)
@JoinColumn(name = "user_id", nullable = false)
@JsonBackReference
private Teacher teacher;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "country_id", referencedColumnName = "country_id")
private Country country;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "state_id", referencedColumnName = "state_id")
private State state;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "district_id", referencedColumnName = "district_id")
private District district;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "tahasil_id", referencedColumnName = "tahasil_id")
private Tahasil tahasil;
@Column(name = "line_one")
private String lineOne;
@Column(name = "line_two")
private String lineTwo;
@Column(name = "landmark")
private String landmark;
@Column(name = "pincode")
private Integer pincode;
public Country getCountry() {
return country;
}
Other Getter Setter
@Entity
@Table(name = "countries", uniqueConstraints = { @UniqueConstraint(columnNames = { "country_name" }) })
public class Country {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "country_id")
private Long countryId;
@NotBlank
@Size(min = 3, max = 50)
@Column(name = "country_name")
private String countryName;
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "country")
private Address address;
Getter Setter
Optional<Teacher> teacher = teacherRepo.findByUserId(id);
if (!teacher.isPresent())
return ResponseEntity.notFound().build();
teacher.get().setUserId(id);
teacher.get().setFirstName(teacherUpdateForm.getFirstName());
teacher.get().setMiddleName(teacherUpdateForm.getMiddleName());
teacher.get().setLastName(teacherUpdateForm.getLastName());
teacher.get().setAddresses(teacherUpdateForm.getAddresses());
userRepository.save(teacher.get());
尝试这样可以通过引用多个站点和读数的方式,但仍然无法看到任何插入或更新到地址表。请帮我弄清我的错误。
问好,切坦
您需要级联教师实体的持久化。
更新教师实体内部属性地址的定义:
@OneToMany(fetch = FetchType.LAZY,mappedBy = "teacher", cascade = CascadeType.ALL)
@JsonManagedReference
private Set<Address> addresses = new HashSet();
您可以随意使用cascade类型值。
问题内容: 我试图在 Flask-SQLAlchemy中 建立多对多关系,但似乎我不知道如何填写 “多对多标识符数据库” 。您能帮我了解我在做什么错以及应该怎么看吗? 然后是我的标识符数据库: 到目前为止,当我尝试将数据插入数据库时,看起来像这样。 现在我的问题是,由于我真的无法创建“ student_identifier”对象,如何将其添加到多对多数据库?如果可以的话,它可能看起来像这样:
本文向大家介绍Django 多对多字段的更新和插入数据实例,包括了Django 多对多字段的更新和插入数据实例的使用技巧和注意事项,需要的朋友参考一下 表的普通字段 一对多字段 多对多字段 插入数据 表的普通字段 一对多字段 多对多字段 修改数据 补充知识:Django的ManyToManyField(多对多)的使用以及through的作用 创建一个经典的多对多关系:一本书可以有多个作者,一个作者
Iam在数据库中插入时出现异常 下面的persistence.xml。 http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd“version=”1.0“>
本文向大家介绍详解sql中的参照完整性(一对一,一对多,多对多),包括了详解sql中的参照完整性(一对一,一对多,多对多)的使用技巧和注意事项,需要的朋友参考一下 一、参照完整性 参照完整性指的就是多表之间的设计,主要使用外键约束。 多表设计: 一对多、多对多、一对一设计 1.一对多 关联主要语句: constraint cus_ord_fk foreign key (customer_id) R
我定义了2个具有单向一对多关系的实体: 在command.class中: 在StockDetails.class中: null
我试图添加一个到我的NestJS应用程序使用TypeORM。我已经声明了一个实体和一个实体,其中一个到多个关系。我可以添加这个人和他们的地址,但是当我试图访问一个人(或所有人)时,我得到一个错误: 我不确定发生了什么,因为我遵循了TypeORM文档中的这个示例,了解如何设置多通和一通的关系。不过,我注意到地址表中有一行,但是列仍然是。您可以看到和文件,以及将这些项目添加到数据库的服务。 任何提示,