为了账号安全,请及时绑定邮箱和手机立即绑定

Hibernate初探之一对多映射

Set<Student> list = new HashSet<Student>();
list.add(stu1);
list.add(stu2);
g.setStudents(list);
技术没有老不老,只有实不实用,如果你觉得老师讲的技术老,有本事别用加减乘除,这个更老
还是看看吧,反正一般项目的开发不会用 外键,1对多这种很少去使用
自学半年了 感觉好慢...大家都加油吧
"one for all" vs "all for one"
——《我的英雄学院》
g.getStudents().add(stu1);
g.getStudents().add(stu2);
stu1.setGrade(g);
stu2.setGrade(g);
感觉关系维护重复了呢?
我试了一下,注释掉g.getStudents().add(stu1);
g.getStudents().add(stu2);没有报错。感觉:这个只需要多方来表现关系就OK,不需要一方再来写一次。
报错:An association from the table STUDENT refers to an unmapped class: Grade

如果按照网上的方法不行就试试下面的方法:

将<many-to-one>改成如下:(注:这是我用eclipse自动生成的hbm文件)

<many-to-one name="grade" class="ManyToOne.Grade" fetch="join">
<column name="gid" />
</many-to-one>

希望对你们有用
卧槽!!!!!!!
额,这个映射文件不是可以直接NEW --》 Hibanete XML Mapping File然后选择对应的实体类吗?
//获取session
public static Session getSession() {
session = sessionFactory.openSession();
return session;
}
//关闭session
public static void closeSession(Session session) {
if(session!=null) {
session.close();
}
}
hibernate 5.x
static {
Configuration config = new Configuration().configure();
sessionFactory = config.buildSessionFactory();
}

//获取sessionFactory
public static SessionFactory geSessionFactory() {
return sessionFactory;
}
我觉得用第一门课的那个老师添加Jar包的方法很不错。在User Libraries里面把jar包添加,然后直接引入
这个方法使用多次发现班级的id会自动一直增加
听一遍还不是很懂。。。。。
课程须知
本课程主要讲解Java中Hibernate中的关联映射,需要对Hibernate基本用法、ORM的基本概念、单表映射等相关知识有一定的基础。
老师告诉你能学到什么?
1、Hibernate关联映射的类型 2、单向一对多关联的配置 3、单向多对一关联的配置 4、cascade和inverse属性的作用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消