编程的过程免不了遇到各种错误,各种问题,而遇到问题,解决问题的这个过程我认为是最让人兴奋的事情。越棘手的问题,解决以后带来的快感也越大。当一个问题你搞了一下午或者一天,甚至几天,当你解决的那一刻你会觉得你又获得了重生。甚至会感觉此时此刻整个世界都是你的。

啊哦,扯的有点远了。言归正传,今天我们要说的是关于Hibernate的一些常见错误。大家都知道Java项目更新一个版本可能与之前的版本有很大的差别,变化有时会很大。比如struts1和struts2,再比如Spring3.x由原来的一个jar包拆分成了多个jar包。因此有时候版本冲突的问题会给我们带来很大的麻烦。下面我们就说说使用Hibernate4.3.x需要注意的几点。


错误一

错误信息:javax.persistence.Table.indexes([Ljavax/persistence/Index

原因:Hibernate4.3不支持@table(name="tablename")

解决方案:使用@entity(name="tablename")代替@table(name="tablename")

错误二

错误信息:javax.persistence.JoinColumn.foreignKey()Ljavax/persistence/ForeignKey

原因:Hibernate4.3在多对一映射的时候不能使用@JoinColumn

解决方案:只写@ManyToOne

错误三

错误信息:javax.persistence.OneToMany.orphanRemoval()Z

原因:javaee、ejb或junit的jar包与hibernate-jpa-2.0-api-1.0.0.Final.jar冲突

解决方案:查看是否存在以上jar包,如果存在,去掉即可

有人说错误一可能是个bug,但是目前还没有一个定论。错误二如果还有对应的@OneToMany,那么就在该处@JoinColumn(name="对应实体_id")。

以上是近期在项目中遇到的一些问题,写出来跟大家分享一下,希望可以帮到一些人,欢迎大家补充,我会将大家的反馈更新到博文中。

菜鸟调错(六)——Hibernate 4.3.x 注解常见错误及解决方案的更多相关文章

  1. 菜鸟调错(八)—— Maven编译错误:不兼容的类型的解决方案

    泛型在实际的工作中应用非常广泛,关于泛型就不在这里赘述了,感兴趣请戳<重新认识泛型>.项目中用到了如下的泛型: public <T> T query(String sql, R ...

  2. 菜鸟调错(三)——Jboss与jdk版本不兼容导致WebService调用出错

    环境: jdk1.6 Jboss 5.1.0.GA 问题描述: EJB发布webserivce已经成功,并且能够成功访问wsdl文件: 使用axis1自带的sample/client下的类Dynami ...

  3. 菜鸟调错(三)——Jboss与jdk版本号不兼容导致WebService调用出错

    环境: jdk1.6 Jboss 5.1.0.GA 问题描写叙述: EJB公布webserivce已经成功,而且可以成功訪问wsdl文件: 使用axis1自带的sample/client下的类Dyna ...

  4. 菜鸟调错(七)——控制台中执行mvn命令后提示‘cmd’不是内部或外部命令

    最近在cmd下使用mvn命令时,在执行完以后总会出现一句“‘cmd’不是内部或外部命令,也不是可执行程序或批处理文件”,如下图: 虽然命令执行成功了,不会有什么影响,但是身为强迫症晚期的我是绝对不能忍 ...

  5. 菜鸟调错(五)——jetty运行时无法保存文件

    背景交代: 上一篇博客写的是用jetty和Maven做开发.测试.在使用的过程中遇到一个小问题,就是在jetty启动以后,修改了jsp.xml等文件无法保存. 错误信息: 解决方案: 到Maven库( ...

  6. 菜鸟调错(四)——Spring与DWR集成,配置文件报错

    背景简介: 该项目是市信用办的一个系统,之前好像是一个石家庄的公司负责的.我属于是半路接手.拿到源码后,根据他们给的简(shao)单(de)明(ke)了(lian)的说明把项目搭起来.结果可想而知,项 ...

  7. 菜鸟调错(二)——EJB3.0部署消息驱动Bean抛javax.naming.NameNotFoundException异常

    在部署EJB的消息驱动Bean时遇到了如下的错误: ERROR [org.jboss.resource.adapter.jms.inflow.JmsActivation] (WorkManager(2 ...

  8. 菜鸟调错(一)——Maven项目部署到Jboss出现:Failed to create a new SAX parser

    今天调试的时候遇到一个错误,往Jboss的deploy目录扔war包的时候,报了一个“Failed to create a new SAX parser”的错误.在网上找了找解决方案,一般都说将项目中 ...

  9. 菜鸟调错(五)——jetty执行时无法保存文件

    背景交代: 上一篇博客写的是用jetty和Maven做开发.測试.在使用的过程中遇到一个小问题.就是在jetty启动以后,改动了jsp.xml等文件无法保存. 错误信息: 解决方式: 到Maven库( ...

随机推荐

  1. HP ALM

    HP ALM 使用经验 使用HP ALM(Application Lifecycle Management)软件有一个多月的时间了,我是从安装,部署,建项,配置,使用,再到问题收集,这个过程过来的.发 ...

  2. centos6.5搭建redmine3.4

    缺陷管理,对问题的持续跟踪!redmine很棒的基于ruby开发 Redmine部署架构  mysql+nginx+ruby+redmine 3.4.x 部署环境 centos 6.5 x64redm ...

  3. 使用nmap查看web服务支持的http methods

    安装nmap yum install nmap 查看web server支持的http methods u02 ~]$ nmap -p --script http-methods www.somewh ...

  4. oracle加密-des 简单举例.

    Declare  v_seed Raw(128);  v_key_1 Raw(64);  v_key_2 Raw(64);    v_Text_for_encrypted Raw(64);  v_mw ...

  5. Ubuntu菜鸟入门(十)—— Flash控件安装

    一.用firefox打开视频时发现,ubuntu并没有自带flash插件,所以流媒体视频无法正常播放,为了解决这个问题,这里我们需要来安装Adobe® Flash® Player插件,这是一款轻量级浏 ...

  6. B. Eight Point Sets

    B. Eight Point Sets http://codeforces.com/contest/334/problem/B   time limit per test 1 second memor ...

  7. webpack window 添加ES6支出

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:张轩链接:http://zhuanlan.zhihu.com/p/20367175来源:知乎 如果现在你的项目还没有对ES6的 ...

  8. list、map、数组 转换

    list,set,map,数组间的相互转换1.list转setSet set = new HashSet(new ArrayList()); 2.set转listList list = new Arr ...

  9. HDU - 4511 小明系列故事――女友的考验(AC自己主动机+DP)

    Description 最终放寒假了,小明要和女朋友一起去看电影.这天,女朋友想给小明一个考验,在小明正准备出发的时候.女朋友告诉他.她在电影院等他,小明过来的路线必须满足给定的规则:  1.如果小明 ...

  10. Android WebView中软键盘会遮挡输入框相关问题

    要想实现这样的软键盘出现的时候会自己主动把输入框的布局顶上去的效果,须要设置输入法的属性,有下面两种设置方式:     一.在java代码中设置例如以下:      getWindow().setSo ...