– Start
假设我们有如下表。如何把一个任意的 Java 类型(Address)和表的多列映射呢?
Customer (customer_Name, city, street, customer_Id)
package shangbo.hibernate.demo016;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
@Entity
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "customerId-generator")
@SequenceGenerator(name = "customerId-generator", sequenceName = "CUSTOMER_ID_SEQ")
private Integer customerId;
private String customerName;
private Address homeAddress;
public Customer() {
}
public Customer(String customerName, Address homeAddress) {
this.customerName = customerName;
this.homeAddress = homeAddress;
}
public Integer getCustomerId() {
return customerId;
}
public String getCustomerName() {
return customerName;
}
public void setCustomerName(String customerName) {
this.customerName = customerName;
}
public Address getHomeAddress() {
return homeAddress;
}
public void setHomeAddress(Address homeAddress) {
this.homeAddress = homeAddress;
}
public void setCustomerId(Integer customerId) {
this.customerId = customerId;
}
}
package shangbo.hibernate.demo016;
import javax.persistence.Embeddable;
@Embeddable
public class Address {
private String city;
private String street;
public Address() {
}
public Address(String city, String street) {
this.city = city;
this.street = street;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
}
– 更多参见:Hibernate 精萃
– 声 明:转载请注明出处
– Last Updated on 2019-06-22
– Written by ShangBo on 2019-06-22
– End