import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.Table;
import org.apache.struts2.json.annotations.JSON;
Resource.java;
@ManyToMany(cascade = { CascadeType.MERGE, CascadeType.PERSIST,
CascadeType.REFRESH })
@JoinTable(name = "t_role_resource", joinColumns = { @JoinColumn(name = "resource_id") }, inverseJoinColumns = { @JoinColumn(name = "role_id") })
public Set<Role> getRoles() {
return roles;
}
Role.java
@ManyToMany(cascade={CascadeType.REFRESH,CascadeType.PERSIST,CascadeType.MERGE}, mappedBy="roles")
//@JSON(serialize=false)
public Set<Resource> getResources() {
return resources;
}
下面的似乎有点问题; 外键反了;
Duty.java-------------------------------
private Set<Employee> employees=new HashSet<Employee>();
@ManyToMany(cascade = { CascadeType.MERGE,CascadeType.PERSIST,CascadeType.REFRESH})
@JoinTable(name="employee_duty",joinColumns={@JoinColumn(name="duty_id")},
inverseJoinColumns={@JoinColumn(name="employee_id")}
)
public Set<Employee> getEmployees() {
return employees;
}
//----Employee.java -------------------------------
private Set<Duty> dutys=new HashSet<Duty>(); //值班
@ManyToMany(cascade={CascadeType.REFRESH,CascadeType.PERSIST,CascadeType.MERGE}, mappedBy="employees")
//@JSON(serialize=false)
public Set<Duty> getDutys() {
return dutys;
}
Question.java----------------------
@ManyToOne(cascade = CascadeType.REFRESH, fetch = FetchType.LAZY)
@JoinColumn(name = "point_id", nullable = true)
// @JSON(serialize = false)
public Point getPoint() {
return point;
}
----------point.java------
@OneToMany(mappedBy = "point", cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@JSON(serialize = false)
public Set<Question> getQuestions() {
return questions;
}