美文网首页
ThreadLocal Modo

ThreadLocal Modo

作者: small新 | 来源:发表于2018-02-06 16:06 被阅读0次
    • 目的:单纯为了每一份线程有自己单独的线程变量。
    • 数据基础类
    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();
    ...
    

    相关文章

      网友评论

          本文标题:ThreadLocal Modo

          本文链接:https://www.haomeiwen.com/subject/vwugzxtx.html