线程中保存数据获取不到用户信息

Java 未结 1 1448
413909782
413909782 2019-12-18 10:37

一、该问题的重现步骤是什么?

1、在ServiceImpl 中创建线程保存数据

 QQ图片20191218103059.png

2、此时获取不用用户信息

 QQ图片20191218103108.png


二、你期待的结果是什么?实际看到的又是什么?

我想期待的结果:

在线程中也可以获取到用户信息,保存租户Id和用户信息到数据库

实际结果:

没有获取到用户信息


三、你正在使用的是什么产品,什么版本?在什么操作系统上?


BladeX 2.2.2


四、请提供详细的错误堆栈信息,这很重要。



五、若有更多详细信息,请在下面提供。


我是否需要把 用户信息在线程外获取,然后传入到线程里,去保存数据,还是有其他方法可以实现?


1条回答
  •  admin
    admin (楼主)
    2019-12-18 11:06

    AuthUtil.getUser是通过request来获取请求头的token,解码后组装成的BladeUser

    开启线程后,request便取不到了,你应该在线程外先获取BladeUser,然后循环List bean,把用户信息写入,这样开启线程新增便可

    5 讨论(0)
提交回复