hibernate一对多、多对一关系(注解)

写了一个新闻模型,一个新闻类型模型,模型如下:新闻模型:@Id@AccessType(value="property")@GeneratedValue(strategy=... 写了一个新闻模型,一个新闻类型模型,模型如下:
新闻模型:
@Id
@AccessType(value = "property")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;

@AccessType(value="property")
@Column(name="title")
private String title;

@AccessType(value="property")
@Column(name="content")
private String content;

@AccessType(value="property")
@Column(name="write_date")
private Date write_date;

@ManyToOne
@JoinColumn(name="news_type", nullable=true, insertable = true, updatable = true)
private NewsType newsType;

新闻类型模型:
@Id
@AccessType(value = "property")
@GeneratedValue(strategy=GenerationType.AUTO)
private int id;

@AccessType(value="property")
@Column(name="type_name")
private String typeName;

@OneToMany(mappedBy = "news_type", cascade = CascadeType.ALL,fetch = FetchType.LAZY)
private List<NewsInfo> nif;
报错如下:
Error creating bean with name 'menuDAO' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\base\system\dao\MenuDAO.class]: Unsatisfied dependency expressed through constructor argument with index 0 of type [org.hibernate.SessionFactory]: : Error creating bean with name 'sessionFactory' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: news.model.NewsInfo.news_type in news.model.NewsType.nif; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in file [E:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\fykj\WEB-INF\classes\applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: news.model.NewsInfo.news_type in news.model.NewsType.nif
如果我去掉新闻类型这边的一对多关系,就不会报错,大家帮我看看,估计是哪里的问题?
居然没有人回答~自己摸索了一下,让我来告诉大家,
@OneToMany(mappedBy = "news_type", cascade = CascadeType.ALL,fetch = FetchType.LAZY) 这里的mappedBy 要对应
@ManyToOne
@JoinColumn(name="news_type", nullable=true, insertable = true, updatable = true)
private NewsType newsType;的NewsType对象名,也就是newsType而不是字段名news_type。
就说这么多,希望大家能看懂,祝大家学习进步,工作顺利!
展开
 我来答
木熊月
2010-05-02 · TA获得超过3.6万个赞
知道大有可为答主
回答量:9819
采纳率:0%
帮助的人:1.4亿
展开全部
lz你的问题也太难了吧,不过占个位置可以学习一下,有了答案在回来看看,学习一下哈,站位啦
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式