ThreadLocal Modo

  • 目的:单纯为了每一份线程有自己单独的线程变量。
  • 数据基础类
public abstract class DataDealBase <T> {

    protected ThreadLocal<T> inputDto = new ThreadLocal<>();
    
    /**
     * 根据入参查询SSP线索信息,保存在全局变量中(自定义)
     * @param inputDto
     * @throws BzException 
     * @author YixinCapital -- wangdianxiang
     *         2016年12月26日 下午7:12:47
     */
    protected abstract void getData() throws BzException;
    
    /**
     *  转换信息
     *  eg:男(M)-> (01)
     * @author YixinCapital -- wangdianxiang
     *         2016年12月5日 下午3:23:49
     */
    protected abstract void assembler() throws BzException;
    
    /**
     *  数据入库
     * @author YixinCapital -- wangdianxiang
     *         2016年12月5日 下午3:33:17
     */
    protected abstract InvokeResult<String> download() throws BzException;
    
    public InvokeResult<String> doIt(T inputDto){
        this.inputDto.set(inputDto);
        this.getData();
        this.assembler();
        return this.download();
    }

}
  • 实现子类
@Service("...")
public class serviceAAA extends DataDealBase <String> {
    @Override
    protected void getData() throws BzException {...}
    }
    @Override
    protected void assembler() throws BzException {...}
    }
    @Override
    protected void download() throws BzException {...}
    }
}

@Service("...")

.......
  • 线程调用
启动线程
...
serviceAAA.doIt();
...
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一:java概述:1,JDK:Java Development Kit,java的开发和运行环境,java的开发工...
    ZaneInTheSun阅读 7,652评论 0 11
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,235评论 25 709
  • 儿子,在这个特别的日子,学校要求每位家长给毕业的孩子写一封信,这是我和你妈18年来写给你的第一封信,也是我们生...
    David_行云流水阅读 2,720评论 1 1
  • “喔——喔——喔!”当清晨的第一道阳光从地平线上露出,公鸡伯伯响亮的报鸣声就从广播里传出来,唤醒了森林。树醒了,草...
    深浅慧阅读 3,593评论 0 0
  • 窗台外住着的7号小姐,是一个美丽的女人,至少在我心眼里这么觉得,第一次碰见是凌晨一二三四点吧,酒吧老板轻轻的弹着吉...
    我很依然阅读 1,841评论 0 0

友情链接更多精彩内容