Java Hibernate表映射

Java Hibernate表映射,java,mysql,hibernate,hibernate-mapping,hibernate-annotations,Java,Mysql,Hibernate,Hibernate Mapping,Hibernate Annotations,以下是想法- 1.Person表存储此人的详细信息及其地址, 2.城市和州有各自的表格, 3.地址表包含有关城市以及该城市属于哪个州的数据, 4.联系人表包含联系人号码,其中一个人可以有多个联系人号码 以下是MySql表模式设计- 1。人员 2。地址 3。城市 4。状态 5。联系 我已为上述表格创建了以下域- 1。PersonDomain @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(na

以下是想法-

1.Person表存储此人的详细信息及其地址
2.城市和州有各自的表格,
3.地址表包含有关城市以及该城市属于哪个州的数据,
4.联系人表包含联系人号码,其中一个人可以有多个联系人号码 以下是MySql表模式设计-

1。人员


2。地址


3。城市


4。状态


5。联系


我已为上述表格创建了以下域-

1。PersonDomain

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "PersonID")
    private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "PersonID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @JsonBackReference
    private Set<ContactDomain> contactDomain;

    @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(mappedBy = "CityID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    @JsonBackReference
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    @JsonBackReference
    private StateDomain stateDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    @JsonBackReference
    private PersonsDomain personId;

    @Column(name = "Description")
    private String description;

3。城市域

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "PersonID")
    private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "PersonID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @JsonBackReference
    private Set<ContactDomain> contactDomain;

    @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(mappedBy = "CityID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    @JsonBackReference
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    @JsonBackReference
    private StateDomain stateDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    @JsonBackReference
    private PersonsDomain personId;

    @Column(name = "Description")
    private String description;

4。StateDomain

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "PersonID")
    private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "PersonID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @JsonBackReference
    private Set<ContactDomain> contactDomain;

    @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(mappedBy = "CityID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    @JsonBackReference
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    @JsonBackReference
    private StateDomain stateDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    @JsonBackReference
    private PersonsDomain personId;

    @Column(name = "Description")
    private String description;

5。ContactDomain

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "PersonID")
    private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "PersonID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @JsonBackReference
    private Set<ContactDomain> contactDomain;

    @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(mappedBy = "CityID", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    @JsonBackReference
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    @JsonBackReference
    private StateDomain stateDomain;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    @JsonBackReference
    private PersonsDomain personId;

    @Column(name = "Description")
    private String description;



我想知道我是否正确映射了Hibernate中的关系。

您不能将@ManyToOne用于Set,例如您使用过的PersonDomain

 @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
此外,使用对象(实体)名称而不是数据库Id列来表示对象也是一种很好的做法,正如您使用的
ContactDomain
->->

 private PersonsDomain personId;
所以,如果您使用字段名
personsDomain
而不是
personId
,这将是一件好事,因为OOPs编程personsDomain会制造很多场景

我已经更新了您在描述中提到的实体: 个人领域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
城市域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
联系人域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
状态域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
这里还有另一件事,一个城市有很多州,所以你可以建立这个关系,这里还有另一件事,但这取决于你的要求,所以你需要根据你的要求改变这些事情。
另外,根据您的mysql模式,用户有一个地址,但您使用的是
persondomin
中的
地址集,因此请确保用户在多个地址中有一个地址,并根据您的要求进行更改。

您不能将@ManyToOne用于Set,例如您使用过的PersonDomain

 @ManyToOne
    @JoinColumn(name = "AddressID", nullable = true)
    @JsonBackReference
    private Set<AddressDomain> addressDomain;
此外,使用对象(实体)名称而不是数据库Id列来表示对象也是一种很好的做法,正如您使用的
ContactDomain
->->

 private PersonsDomain personId;
所以,如果您使用字段名
personsDomain
而不是
personId
,这将是一件好事,因为OOPs编程personsDomain会制造很多场景

我已经更新了您在描述中提到的实体: 个人领域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
城市域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
联系人域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
状态域:

@Entity
public class PersonsDomain {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "PersonID")
private int personId;

    @Column(name = "FirstName")
    private String firstName;

    @Column(name = "Age")
    private int age;

    @Column(name = "DateOfBirth")
    private Date dateOfBirth;

    @OneToMany(mappedBy = "personId", cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    private Set<ContactDomain> contactDomain;

    @OneToMany
    private Set<AddressDomain> addressDomain;
}
@Entity
public class AddressDomain {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "AddressID")
    private int addressId;

    @OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
    @Fetch(FetchMode.JOIN)
    private CityDomain cityDomain;

    @ManyToOne
    @JoinColumn(name = "StateID", nullable = true)
    private StateDomain stateDomain;

}
@Entity
public class CityDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "CityID")
    private int cityId;

    @Column(name = "CityName")
    private String cityName;
}
@Entity
public class ContactDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ContactID")
    private int contactId;

    @Column(name = "ContactNumber")
    private int contactNumber;

    @ManyToOne
    @JoinColumn(name = "PersonID", nullable = true)
    private PersonsDomain personsDomain;

    @Column(name = "Description")
    private String description;
}
@Entity
public class StateDomain {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "StateID")
    private int stateId;

    @Column(name = "StateName")
    private String stateName;
}
这里还有另一件事,一个城市有很多州,所以你可以建立这个关系,这里还有另一件事,但这取决于你的要求,所以你需要根据你的要求改变这些事情。 另外,根据您的mysql模式,用户有一个地址,但您正在使用
persondomin
中的
地址集,因此请确保用户在多个地址中有一个地址,并根据您的要求进行更改