java 后端事件领域模型框架 kaka 更新至 2.0.0

栏目: 软件资讯 · 发布时间: 4年前

内容简介:kaka是一款服务于java后端的事件领域模型框架,主要目的为解耦业务、 简化程序复杂性、提高代码可读性和降低开发维护成本。 本次更新内容如下: aop删除不必要的Class及其相关类名、包名的映射缓存,增加运行时动...

kaka是一款服务于 java 后端的事件领域模型框架,主要目的为解耦业务、 简化程序复杂性、提高代码可读性和降低开发维护成本。

本次更新内容如下:

  1. aop删除不必要的Class及其相关类名、包名的映射缓存,增加运行时动态Aop能力。
  2. 将Facade中包含regist文本的方法,全部更改为register;优化Facade中Mediator注册。
  3. Facade实例获取由原来的单例改为工厂模式,可继承Facade自定义Queue实现或者Quatrz(或其它)的定时调度。
    QuartzFacade facade = FacadeFactory.config(QuartzFacade.class); //注册自定义Facade子类,全局注册一次
    
    //后面任何地方可使用如下语句获得Facade对象进行事件分发
    
    QuartzFacade facade = FacadeFactory.getFacade();
    
    //QuartzFacade 在本框架中未做具体实现,仅作为参考范例

     

  4. 额外增加基于Excel数值配置表(预先转换为制表符分割单元格的纯文本,也可自定义格式并做相应实现)的解析处理功能
    //TextNumericConfig为抽象类,主要有如下抽象方法:
    //  String initDelimiter() 初始化单元格数据的分割符
    //  void cacheObject(T info) 缓存一行数值数据 T
    //  void parseBefore() 解析前的处理
    //  void parseAfter()  解析后的处理
    
    //范例如下:
    
    /**
     * 自定义数值数据管理器,每行数据将自动转换为ConfPlaceInfo对象。
     */
    @Numeric(src = "conf_place.txt")
    public class ConfPlaceInfoManager extends TextNumericConfig<ConfPlaceInfo> {
    
        private final Map<Integer, ConfPlaceInfo> map = new ConcurrentHashMap<>();
        private final List<ConfPlaceInfo> list = new CopyOnWriteArrayList<>();
    
        @Override
        protected String initDelimiter() {
            return "\t";
        }
    
        @Override
        protected void cacheObject(ConfPlaceInfo info) {
            if (info.getMaxGold() < 0) {
                info.setMaxGold(Integer.MAX_VALUE);
            }
            map.put(info.getId(), info);
            list.add(info);
        }
    
        @Override
        protected void parseBefore() {
            map.clear();
            list.clear();
        }
    
        @Override
        protected void parseAfter() {
        }
    
        public ConfPlaceInfo getConfPlaceInfo(int id) {
            if (id <= 0) id = 1;
            return this.map.get(id);
        }
    }
    
    
    TextNumericConfig numericConfig = facade.retrieveProxy(file.getName()); //fileName为Numeric注解配置的src参数 
    numericConfig.parse(is, "UTF-8", 1); //is为数值配置文件输入流

     

参考消息:https://gitee.com/zkpursuit/kaka-notice-lib


以上所述就是小编给大家介绍的《java 后端事件领域模型框架 kaka 更新至 2.0.0》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C# 6.0本质论

C# 6.0本质论

[美] Mark Michaelis(马克·米凯利斯)、[美] Eric Lippert(埃里克·利珀特) / 周靖、庞燕 / 人民邮电出版社 / 2017-2-1 / 108

这是C#领域中一部广受好评的名作,作者用一种易于理解的方式详细介绍了C#语言的各个方面。全书共有21章和4个附录(其中哟2个附录从网上下载),介绍了C#语言的数据类型、操作符、方法、类、接口、异常处理等基本概念,深入讨论了泛型、迭代器、反射、线程和互操作性等高级主题,还介绍了LINQ技术,以及与其相关的扩展方法、分部方法、Lambda表达式、标准查询操作符和查询表达式等内容。每章开头的“思维导图”......一起来看看 《C# 6.0本质论》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

MD5 加密
MD5 加密

MD5 加密工具