关于spring升级到4.3.12 hibernate升级到4.3 遇到的一些问题和解决方法

起因 

       由于近段时间 项目又要用的elasticsearch Fluentd, elasticsearch要基于环境jdk8  和原来的项目在一台设备 原来的项目用的jdk6  为了统一 所以借机生鸡。

遇到的问题

     连锁效应 jdk8 不兼容spring4之前的版本  spring4不兼容hibernate4之前的版本,巧的是,我用的都是老版本。

      版本兼容问题自己升级就可以了升级到不报版本兼容的问题,如果用了quartz的老版本,很高心也要升级。

     一下是我升级后的版本 ,只给出升级的包

hibernate-core  4.3.11.Final
    quartz 2.3.0
    spring.version   4.3.12.RELEASE
    jackson-annotations 2.9.0
    jackson-core 2.9.0

用maven hibernate升级后的包包含了annotations包。需要把hibernate-commons-annotations  hibernate-annotations 删除

解决方法

以下是我能回想到的  如果有遗漏还请见谅可评论补充。本想重现但是时间太短马上12.30了 要去吃饭了,下午还有更重要的事情,所以就此做简短的记录和分享。

1.配置文件中引用的包也需要修改为升级后的org.springframework.orm.hibernate4.LocalSessionFactoryBean ,org.springframework.scheduling.quartz.CronTriggerFactoryBean等

2.实体类删除@table 只用@entity(name="")     括弧hibernate4升级后的需要

3.hql语句中之前用的实体类名现在改为@entity中name的名字 例如:@entity(name=“log_user”) hql内应该用 from log_user ;

以上是我升级jdk8做的简短的总结  要去吃饭了 拜拜


猴急

嗯  过了一天  晚上在家看书 看到了jpa (Java Persistence APIJava持久层API,大概了解了一下和hibernate的关系。http://blog.sina.com.cn/s/blog_5f1619e80100yoxz.html  这里讲的比较清楚一点。

早上  发现了下面这位同学的分享http://www.linuxidc.com/Linux/2016-04/130415.htm

然后我就恢复了原来的配置用@entity和@table(name=“”)两个,然后删除了ejb3-persistence.jar  更新了javaee-api 到7.0

接着就正常启动了。这里关键就像上面那个同学说的,是架包冲突,如果你的不是ejb3-persistence.jar  自己可以找一下是不是有其他的javax.persistence.Table.class

感谢两位同学 还有其他爱分享的同学。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值