g.getStudents().add(stu1);
g.getStudents().add(stu2);
stu1.setGrade(g);
stu2.setGrade(g);
感觉关系维护重复了呢?
我试了一下,注释掉g.getStudents().add(stu1);
g.getStudents().add(stu2);没有报错。感觉:这个只需要多方来表现关系就OK,不需要一方再来写一次。
g.getStudents().add(stu2);
stu1.setGrade(g);
stu2.setGrade(g);
感觉关系维护重复了呢?
我试了一下,注释掉g.getStudents().add(stu1);
g.getStudents().add(stu2);没有报错。感觉:这个只需要多方来表现关系就OK,不需要一方再来写一次。
2017-10-15
已采纳回答 / 飞翔的小牛
<many-to-one name="grade" class="com.imooc.entity.Grade" column="gid" cascade="save-update"></many-to-one>这里面的 column="gid" 表示Grade表里面的gid gid 在Student表中是外键,gid 在Grade表中是主键。
2017-10-14
最新回答 / 一只丑橘
inverse属性必须是在set标签里的吧,hibernate配置文件中的inverse属性表示反转,一般是在<set>节点中指定关联关系的控制方向,默认由one方来维护,如果双方都来维护,对我们系统的性能是有影响的。在one方把inverse属性设置为‘true’,由many方来进行维护,在一对多的关联中,只能设置one方的inverse为true,这将有助于性能的改善
2017-10-14
已采纳回答 / Forget_Me
项目中框架的版本是很重要的一环,不同的版本API也不同。所以在确定一个项目的时候,一般都会规定项目所使用的框架版本。如果升级后的构建方法再次出现变化,并且你的项目需要使用这个版本的框架,那么就只能去学习了。
2017-10-14
最新回答 / qq_星河k_0
native是采用本地数据库的默认主键生成方式,主键没有默认值,说明你没有设置主键,或者说默认主键是null。你把Integer改为Int就行了,int值默认是0 。
2017-10-13
报错: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>
希望对你们有用
如果按照网上的方法不行就试试下面的方法:
将<many-to-one>改成如下:(注:这是我用eclipse自动生成的hbm文件)
<many-to-one name="grade" class="ManyToOne.Grade" fetch="join">
<column name="gid" />
</many-to-one>
希望对你们有用
2017-10-12
额,这个映射文件不是可以直接NEW --》 Hibanete XML Mapping File然后选择对应的实体类吗?
2017-10-12
//获取session
public static Session getSession() {
session = sessionFactory.openSession();
return session;
}
//关闭session
public static void closeSession(Session session) {
if(session!=null) {
session.close();
}
}
public static Session getSession() {
session = sessionFactory.openSession();
return session;
}
//关闭session
public static void closeSession(Session session) {
if(session!=null) {
session.close();
}
}
2017-10-12
hibernate 5.x
static {
Configuration config = new Configuration().configure();
sessionFactory = config.buildSessionFactory();
}
//获取sessionFactory
public static SessionFactory geSessionFactory() {
return sessionFactory;
}
static {
Configuration config = new Configuration().configure();
sessionFactory = config.buildSessionFactory();
}
//获取sessionFactory
public static SessionFactory geSessionFactory() {
return sessionFactory;
}
2017-10-12
我觉得用第一门课的那个老师添加Jar包的方法很不错。在User Libraries里面把jar包添加,然后直接引入
2017-10-12