BloB或TEXT字段类型,该属性非常有用
}
@Entity
@Table(name="employee")
public class Employee implements java.io.Serializable{
@Id
@Column(name="id")
@GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "native")
private Integer id;
@Column(name="name")
private String e_name;
@Column(name="sex")
private String sex;
@Column(name="birthady")
private String birthday;
@Column(name="address")
private String address;
@OneToMany(cascade={CascadeType.ALL},fetch=FetchType.EAGER)
private Set<Student> student = new HashSet<Student>();
public Set<Student> getStudent() {
return student;
}
public void setStudent(Set<Student> student) {
this.student = student;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getE_name() {
return e_name;
}
public void setE_name(String eName) {
e_name = eName;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
many方
package com.test.bean;
@Entity
@Table(name="student")
public class Student {
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.AUTO,generator="")
private Integer id;
@Column(name="name")
private String name;
public Employee getEmployee() {
return employee;
}
public void setEmployee(Employee employee) {
this.employee = employee;
}
@Column(name="age")
private Integer age;
@ManyToOne(cascade={CascadeType.ALL},optional=false)
@JoinColumn(name="e_id")
private Employee employee;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
测试类
public static <T> void main(String args[]){
BeanFactory applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
Ibasedao<Student> u =(Ibasedao<Student>)applicationContext.getBean("basedao");
Employee e= new Employee();
Student s = new Student();
s.setAge(30);
s.setName("安徽");
e.setAddress("阜阳");
e.setE_name("张三");
e.setSex("男");
s.setEmployee(e);
u.saveobject(s);
2.多对多
package com.test.bean;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name="address")
public class Address {
private Integer id;
private String name;
private Set<Reader> reader = new HashSet<Reader>();
@ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.LAZY)
@JoinTable(name="reader_address",joinColumns={@JoinColumn(name="a_id",referencedColumnName="id")}
,inverseJoinColumns={@JoinColumn(name="r_id",referencedColumnName="id")})
// @ManyToMany(targetEntity=com.test.bean.Reader.class,mappedBy="address",cascade={CascadeType.ALL})
public Set<Reader> getReader() {
return reader;
}
@Column(name="name")
public String getName() {
return name;
}
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.AUTO)
public Integer getId() {
return id;
}
public void setReader(Set<Reader> reader) {
this.reader = reader;
}
public void setId(Integer id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
}
package com.test.bean;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
@Entity
@Table(name="reader")
public class Reader {
private Integer id;
private String name;
private Integer age;
private Set<Address> address = new HashSet<Address>();
@ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.LAZY)
// @ManyToMany(targetEntity=com.test.bean.Address.class,cascade={CascadeType.ALL})
public Set<Address> getAddress() {
return address;
}
public void setAddress(Set<Address> address) {
this.address = address;
}
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.AUTO)
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name="name")
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Column(name="age")
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}