User表与survey是一对多关系(即一个用户有多个调查):
单向关联实体类:
public class User {
private Integer id;
private String email;
private String password;
private String nickName;
private Date regDate=new Date();
public class Survey {
private Integer id;
private String title = "未命名";
private String preText = "上一步";
private String nextText = "下一步";
private String exitText = "退出";
private String doneText = "完成";
private Date createTime = new Date();
//建立从Survey到User之间多对一关联关系
private User user ;
单向关联配置文件:
survey.hbm.xml文件配置(User不用配置):
<!-- 映射从Survey到User之间多对一关联关系 -->
<many-to-one name="user" class="User" column="userid" />
survey表与page表示一对多关系(即一个调差有多个页面):
双向关联实体类:
public class Page {private Integer id;
private String title = "未命名";
private String description;
//简历从Page到Survey之间多对一关联关系
private Survey survey;
public class Survey {
private Integer id;
private String title = "未命名";
private String preText = "上一步";
private String nextText = "下一步";
private String exitText = "退出";
private String doneText = "完成";
private Date createTime = new Date();
//建立从Survey到User之间多对一关联关系
private User user ;
//建立从Survey到Page之间一对多关联关系
private Set<Page> pages = new HashSet<Page>();
public class Page {
private Integer id;
private String title = "未命名";
private String description;
//简历从Page到Survey之间多对一关联关系
private Survey survey;
双向关联配置文件:
page.hbm.xml:<many-to-one name="survey" class="Survey" column="surveyid"/>
survey.hbm.xml:<set name="pages" invers="true">
<key column="surveyid">
<one-to-many class="Page">
</set>