当前位置: 首页 > news >正文

珠海营销型网站建设深圳网站优化提供商

珠海营销型网站建设,深圳网站优化提供商,湖北省建设厅政务公开网站,苏中建设网站在上一篇《【理论篇】SaTokenException: 非Web上下文无法获取Request问题解决 -理论篇》中#xff0c;凯哥(公众号#xff1a;凯哥Java)介绍了了产生这个问题的源码在哪里#xff0c;以及怎么解决的方案。没有给出实际操作步骤。 本文#xff0c;凯哥就通过threadLocal方案… 在上一篇《【理论篇】SaTokenException: 非Web上下文无法获取Request问题解决 -理论篇》中凯哥(公众号凯哥Java)介绍了了产生这个问题的源码在哪里以及怎么解决的方案。没有给出实际操作步骤。 本文凯哥就通过threadLocal方案来解决。 一、创建用于存放共享变量的对象 代码如下 package com.kaigejava.dataanalysis;import lombok.Data; import lombok.extern.slf4j.Slf4j; Data Slf4j public class ThreadShareDataDTO {/*** 是否拥有数据查看权限。* 用来解决SaToken,非Web上下文无法获取Request问题的*/private Boolean hasDataViewRole;//防止new,生成单例类private ThreadShareDataDTO(){}/*** ThreadLocal:将变量与当前线程绑定,相当于MapThread, value* 此处使用的是饱汉模式构造*/private static ThreadLocalThreadShareDataDTO threadLocal new ThreadLocal();/*** 返回当前线程的单例* 此处不需要使用关键字synchronized,想想为什么?*/public static ThreadShareDataDTO getCurrentThreadInstance() {ThreadShareDataDTO shareData threadLocal.get();if (shareData null) {shareData new ThreadShareDataDTO();threadLocal.set(shareData);}return shareData;}public static void clear(){log.info(开始移除threadLocal中数据);threadLocal.remove();}} 二、在开启子线程的时候将需要传递的参数设置到threadLocal中 public void startCreateDataReport(TenantMonitorReportListRequest param) {boolean hasDataViewRole StpUtil.hasRole(dataViewRole);param.setHasDataViewRole(hasDataViewRole);new MakeReportThread(param).start();} 三、在子线程中获取到共享变量 boolean hasDataViewRole ; ThreadShareDataDTO shardData ThreadShareDataDTO.getCurrentThreadInstance(); if (Objects.nonNull(shardData.getHasDataViewRole())) {hasDataViewRole shardData.getHasDataViewRole(); } else {hasDataViewRole StpUtil.hasRole(dataViewRole); } 说明 先从threadLocal中获取共享变量如果存在就直接获取。如果不存在在调用原来的方法。 四、使用完成之后已经要记得remove掉 在线程执行完成之后finally方法中移除 } finally {//从threadLocal中移除ThreadShareDataDTO.clear(); }
http://www.hkea.cn/news/14574348/

相关文章:

  • 文化馆建设网站WordPress设置域名出错
  • 网站建设的空间是什么手机兼职可以做什么
  • 电子商务的网站的建设内容建筑工程公司黄页
  • 如果网站曾被挂木马四川省和城乡建设厅网站
  • 枣庄手机网站建设报价如果建手机网站
  • 网站建设 中国联盟网一个软件的开发流程图
  • 网站开发 认证企业网站搜索引擎推广方法
  • 关于公司网站怎么做西安做网站朋朋网络
  • wordpress搭建外贸网站如何做一个微信公众号
  • 建设企业网站得花多少钱网站外链建设可以提升网站
  • 挣钱做任务的网站网站建设业务员转换大
  • 上海网站建设 缔客郑州市网站建设
  • 做公司网站优劣势做网址导航网站收益
  • 企业做网站公司怎么做中建南方建设集团官方网站
  • 网站分级怎么做wordpress设置连接地址
  • 扬州高端网站制作成crm网
  • 江苏电信网站备案百度风云榜游戏排行榜
  • 网站推广阶段长春网站建设方案外包
  • 济南市建设工程招投标协会网站如何用网站做cpa
  • 个人网站做百度云电影链接犯法吗科技感网页设计
  • 海南做网站做文案应该关注的网站推荐
  • 仿v电影wordpress泰安seo培训
  • 杭州 手机网站建设做淘客网站怎么样
  • 做枪版电影网站赚钱用笔记本电脑能建设网站吗
  • 建网站的英文绵阳城乡住房建设厅网站
  • 服务之家网站推广做seo要明白网站内容
  • 网站关键词怎样优化做网站 如何 挣钱
  • 依安县建设网站在柬埔寨做网络销售推网站
  • 专门做外国的网站创意设计报告
  • 做服装搭配直接售卖的网站app网站做二手交易