springboot在weblogic中的事务失效问题

cover


记录下最近项目中遇到的坑,关于事务的问题,我们的项目使用springboot构建,并且我们的连接池使用的是druid,在本地直接使用springboot打好jar包,
一切正常行,然后将项目打包成war包,上到weblogic中,运行也正常,但是一次导入excel表的case中,导入失败了,但是数据没有回滚!经过测试才发现在weblogic中springboot管理的事务失效了,马上查询资料,经过几小时的谷歌后找到了解决办法,在weblogic中放弃自己的连接池,转而使用weblogic中的jndi数据源。
配置步骤如下:

  1. 启动weblogic,进入到管理界面,选择服务下边的数据源,点击新建按钮


    mark
  2. 选择一般数据源,选择你的数据库,输入名字,jndi名称(重要),建议 数据源名称和jndi名字一样,点击下一步


    mark

    mark
  3. 接着驱动程序选择 “for instance connections”。


    mark
  4. 事务类型默认


    mark
  5. 填写数据源信息,最下方的oracle.jdbc.DRCPConnectionClass: 可不填写


    mark
  6. 继续后下一步确认你的信息


    mark
  7. 接着下一步,勾上AdminServer,点击完成


    mark
  8. 建立完毕


    mark
  9. 修改你的springboot项目配置文件,添加配置:


    mark

    这里的jndi的name就是刚刚你新建的名字。

  10. 去掉原来的数据源配置(同时存在的话,还是原来的数据源生效),重新打war包,运行,此时事务生效!
    本文原创地址,我的博客:https://jsbintask.cn/2019/01/22/webcontainer/weblogic-springboot-tx/#more , 未经允许,禁止转载。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容