【发布时间】:2016-03-09 00:52:40
【问题描述】:
我有两张桌子。 CategoryMaster和PotentialProject
PotentialProject [potentialProjectID, typeOfProject]
CategoryMaster [CategoryID, CategoryName]
我想加入 typeOfProject 和 categoryID。
@Entity
@Table(name="CategoryMaster")
public class CategoryMaster
{
@Id
@Column(name="CategoryID")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer CategoryID;
private String CategoryName;
@OneToOne
@JoinColumn(name="typeOfProject")
private PotentialProject potentialProject;
//getter
//setter
}
@Entity
@Table(name="PotentialProject")
public class PotentialProject
{
@Id
@Column(name="PotentialProjectID")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer potentialProjectID;
private int typeOfProject;
@OneToOne(mappedBy="potentialProject")
private CategoryMaster categoryMaster;
//getter
//setter
}
hibernate 中的错误信息是无效的列名 typeOfProject。请给我一些建议。谢谢。
【问题讨论】:
-
您能完整发布您的实体吗?
-
是的。请查看更新。
-
检查您的数据库。 DB 中的列名很可能与您映射的内容不匹配。而且,为什么要使用这种命名不一致的数据库方案?
-
@JoinColumn和mappedBy不正确,请参阅链接副本。您还缺少一些@Column,例如CategoryName -
@RC 他不需要
@Column和@JoinColumn和@OneToOne