本篇内容介绍了“Java责任链设计模式的应用有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
专注于为中小企业提供网站设计、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业阳曲免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
@Override public boolean filter(List<String> handlerList) { List<DynamicRecord> dynamicRecords = handlerList.stream().filter(data -> dynamicData.test(data)) .map(data -> DynamicFormatUtil.toDataRecord(data)).collect(Collectors.toList()); List<StaticRecord> staticRecords = handlerList.stream().filter(data -> staticData.test(data)) .map(data -> StaticFormatUtil.toDataRecord(data)).collect(Collectors.toList()); try { if (!CollectionUtils.isEmpty(dynamicRecords)) { filterDynamic(dynamicRecords); } if (!CollectionUtils.isEmpty(staticRecords)) { writeAfterFilterStatic(staticRecords); } return true; } catch (Exception e) { log.info("filter data exception {}", e); return false; } } private void filterDynamic(List<DynamicRecord> dynamicRecords) { dynamicFilterChain.doFilters(dynamicRecords); } @Override public void doFilters(List<DynamicRecord> record) { List<Filtered> filtereds = new ArrayList<>(); List<FilteredReason> filteredReasons = new ArrayList<>(); List<AfterFilter> afterFilters = new ArrayList<>(); List<DynamicRecord> afterFilterRecords = new ArrayList<>(); record.forEach(dynamicRecord -> this .startFilter(dynamicRecord, filtereds, filteredReasons, afterFilterRecords)); if (!CollectionUtils.isEmpty(afterFilterRecords)) { //TODO 保存过滤后的数据 saveDataHub(afterFilterRecords); } if (!CollectionUtils.isEmpty(filtereds)) { //TODO 保存 过滤数据 } if (!CollectionUtils.isEmpty(filteredReasons)) { //TODO 保存过滤原因 } }@Service@Slf4jpublic class AccelerationFilter implements DynamicFilter { @Override public FilterResult doFilter(DynamicRecord data, DynamicFilterChain filterChain, FilterResult filterResult, EnumFilter enumFilter) { return null; }}
“Java责任链设计模式的应用有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
分享题目:Java责任链设计模式的应用有哪些
URL链接:https://www.cdcxhl.com/article0/pispio.html
成都网站建设公司_创新互联,为您提供软件开发、全网营销推广、商城网站、手机网站建设、微信公众号、外贸网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联