我正在制作数据库优先的hibernate api。
我让netbeans从数据库生成POJO和映射文件。 (使用“Hibernate Mapping文件和数据库中的POJO”)
数据库中的外键现在是对POJO的引用。
例如: A类与B类具有外键关系,则A类POJO为:
Class A {
private B b;
private Integer idA;
public A (B b){
this.b = b;
}
//const, getter, setter
}
如果我想创建一个新的A对象并将其插入数据库(使用Hibernate.session.persist(a)),我会遇到问题。
似乎我还要创建一个B对象(但是这个B对象有一个表C的外键等等)
所以我应该编写一个hql查询来插入一个新的A-object
,而不是使用session.persist。Query q = session.createQuery(INSERT INTO A (idB) 2);
q.executeUpdate(q);
(或者使用hql查询是否比使用session.persist(a)有缺点?)
或者我应该手动编辑POJO和映射文件以包含表B id,而不是B类对象?
或者我有什么东西可以忽略?
在此先感谢,如果我需要提供任何其他信息,请与我们联系 问候