这是一个hibernate常见的问题。搜索出来最多的答案都是如下面这篇文章所述:

  http://blog.csdn.net/eyejava/article/details/1896492

  但我觉得我问题不在这里,因为在我添加一个新的实体类关系之前,所有的映射配置都没有问题的,但现在只要是这几个互相关联的实体类的操作均出现了问题。我的实体类关系如下:

  从图中可以发现,所有的实体类都和Dept直接或者间接有关系,这些实体类的操作都出现了问题。浏览器报的错是没有Dept这个实体类。

  

  由此回答启发,我去观察了数据库。果然发现问题是这样的:我的关系1多对一原本是不存在的,是我后来调整实体类关系的时候加上去的,数据库中有了deptId这一字段,但是这一字段值为null。删除了相关表中之前用于测试的数据之后果然一切都变得美好了。后来我去看日志文件,才发现日志文件中居然有这样的错误:

  2016-04-21 21:42:19,043 [main] ERROR org.hibernate.tool.hbm2ddl.SchemaUpdate - Unsuccessful: alter table curriculum add index                    FKC5509C3B2405960D (deptId), add constraint FKC5509C3B2405960D foreign key (deptId) references twcs4sxau.dept (deptId)
  2016-04-21 21:42:19,044 [main] ERROR org.hibernate.tool.hbm2ddl.SchemaUpdate - Cannot add or update a child row: a foreign key constraint fails         (`twcs4sxau`.`#sql-a90_47`, CONSTRAINT `FKC5509C3B2405960D` FOREIGN KEY (`deptId`) REFERENCES `dept` (`deptId`))

  如果我早点看到这段话,会早点察觉到是数据库的问题的。

  从这次的错误中我总结出两点:

  1、出错了先看console,再看日志文件,得出错误原因。

  2、不要乱改实体类的关系。我是因为初次并且独立做这个项目,出了错只能自己后期发现,没有人商量或者提醒。毕设开始仓促,并没有好好设计就开始写代码了,这给我后期真是带来了无穷无尽的麻烦啊。

  另外我还看见一个回答很具有启发性:

  http://www.cnblogs.com/jianxh/articles/82350.html

  直接指出了是破坏了外键关系,让确定表的关系是否正确。这与我在日志文件中发现的提示相吻合。

最新文章

  1. nyoj-204
  2. SharePoint 2013 REST 以及 OData 基础
  3. led显字风扇原理?
  4. 【codevs 1296】营业额统计 水~~
  5. Codeforces 85D Sum of Medians
  6. Jquery动画第一部分
  7. linux 配置apache+subversion
  8. 2013=11=12 SQL 实验
  9. FTP下载帮助类
  10. Codeforce#354_B_Pyramid of Glasses(模拟)
  11. iOS常用的第三方库GitHub地址
  12. Nginx基础学习(一)—Nginx的安装
  13. React——组件的生命周期函数
  14. Tomcat8配置tomcat-users.xml配置
  15. 使用Java+MySQL+Apache开发后台项目(一)
  16. codeforces #530 D(Sum in the tree) (树上贪心)
  17. 2018ddctf wp
  18. 剑指offer(一):二维数组中的查找
  19. 20135337朱荟潼 Linux第八周学习总结——进程的切换和系统的一般执行过程
  20. 《HTTP权威指南》学习笔记——HTTP概述

热门文章

  1. vs2010 2013 2015+ 必备插件精选(15个)
  2. android内存分析:heap Snapshot的使用
  3. golang: 常用数据类型底层结构分析
  4. JMeter学习(三十五)使用jmeter来发送json/gzip格式数据
  5. Open Close Principle 开闭合原则
  6. T4
  7. H5音频和视频
  8. solr 日期查询格式
  9. nodejs回调函数
  10. iOS GCD 编程小结