iteye_15788
2010-04-04 00:29
浏览 227
已采纳

请教hibernate中对无主键的表如何执行sava方法呢,谢谢

[code="java"]
public class Project extends BaseEntity {

/**
 * 
 */
private static final long serialVersionUID = -6091554523028851741L;
/**
 * 类别标识
 */
@ManyToOne
@JoinColumn(name = "tyId")
private Type ty;
/**
 * 项目名称
 */
private String proName;

[/code]

两个表 project 和 type ,project 与 type为一对多关系
project表里有pro_id 为主键
type表里有p_id 不是主键
我想在保存project同时保存多个type信息
type表中的tyId为project 表的主键,我在保存
中报错:Caused by: org.hibernate.AnnotationException: No identifier specified for entity:

Project p = new Project();
p.setName("ss");
Type t1 = new Type();
t1.setName("t1");
t1.setProject(p);

Type t2 = new Type();
t2 .setName("t2");
t2 .setProject(p);

Type t3 = new Type();
t3.setName("t3");
t3.setProject(p);

List l = new ArrayList();
l.add(t1);
l.add(t2);
l.add(t3);
p.setType(l);

getSession().save(p);

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • iteye_13460 2010-04-04 13:17
    已采纳

    [size=large][color=red]在Hibernate 中,如果表无主键,你要创建两个类.一个是由你的所有列组成主键类,另一个类是你的实体类,这个实体类只包括一个成员变理,就是主键类..

    详细可看:http://dev.csdn.net/article/30/30290.shtm

    希望对你有帮助..[/color][/size]

    点赞 评论

相关推荐 更多相似问题