今天碰到个问题,实现了一个easyexcel的监听器,并设置为多例模式,然后在service层使用autowired进行注入,然后使用读取方法进行解析,解析后通过get方法获取监听器内部的类变量,但是获取之后发现数据为空!然后问题来了,虽然通过autowired注入可能会有问题,但是为什么获取的数据会为空,难道单独使用get方法的实例变成了一个新的实例?
3条回答 默认 最新
- 社区专家-Monster-XH 2023-02-04 00:32关注
''该回答引用ChatGPT''
如对你的问题有帮助,请点击右侧采纳即可
很可能是因为每次调用get方法得到的都是一个新的实例,这与autowired注入的多例模式不符。可以考虑在easyexcel的监听器中使用ThreadLocal或单例模式,以便在service层的多个方法中访问监听器的同一实例,从而保证在调用get方法时获取的数据不为空。解决 无用评论 打赏 举报 编辑记录