java 后端事件领域模型框架 kaka 更新至 2.0.0
kaka是一款服务于java后端的事件领域模型框架,主要目的为解耦业务、 简化程序复杂性、提高代码可读性和降低开发维护成本。
本次更新内容如下:
- aop删除不必要的Class及其相关类名、包名的映射缓存,增加运行时动态Aop能力。
- 将Facade中包含regist文本的方法,全部更改为register;优化Facade中Mediator注册。
- Facade实例获取由原来的单例改为工厂模式,可继承Facade自定义Queue实现或者Quatrz(或其它)的定时调度。
QuartzFacade facade = FacadeFactory.config(QuartzFacade.class); //注册自定义Facade子类,全局注册一次 //后面任何地方可使用如下语句获得Facade对象进行事件分发 QuartzFacade facade = FacadeFactory.getFacade(); //QuartzFacade 在本框架中未做具体实现,仅作为参考范例
- 额外增加基于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为数值配置文件输入流
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Verge3D 3.0 for 3ds Max 发布
阳春三月,Verge3D 3.0 for 3ds Max如约而至。此次重大版本升级为Verge3D应用管理器和拼图编辑器带来了全新的用户界面和更舒适的用户体验。应用管理器添加了诸多新功能,如上传应用压缩包至Verge3D云;删除应用文件夹至系统垃圾箱;自定义应用文件夹路径,调整和更新了应用模板功能等。拼图编辑器布局也做了很大的改进,扩大了工作空间,应用户要求引入了暗黑主题等。此外,VR模块现在支持Oculus Quest等VR设备,您可以在拼图中为其功能强大的控制器设计交互了。 应用管理器大幅改观 整个应用管理器都有了新的用户界面,应用列表的样式、文件图标都重新做了设计。相对较少使用的功能 (项目创建、模板、设置、网络管理、许可证管理、帮助链接和版本信息等) 则被移动到左侧工具栏内。 在单独的应用页面中,操作按钮全部移至右侧边栏,包括启动拼图、打开应用文件夹、将应用上传到网络、将应用zip存档上传到网络、删除和更新项目的按钮等。 为了提高工作效率,大多数操反馈将在对话框中完成,而不是重定向到新页面。 Esc 键可用于快速关闭所有对话框窗口。 当创建一个新的应用时,应用管理器会显示指向其...
- 下一篇
CUBA Platform 7.2.0 发布,企业级应用开发平台
CUBA Platform 7.2.0 发布,这次发布很多新功能,以及多项 Bug 修复,推荐升级。 部分破坏性改动: 1. remember-me 机制重写 2. Login 界面重构,相关代码需要做一定的修改 3. SideMenu 组件布局改动,使用到该组件的界面需要检查兼容性。 4. 引入新的安全范围概念,删除了 `cuba.anonymousSessionId` 应用程序属性。 5. UserSession 类改动比较大,如使用过该类,需参考文档迁移。 主要新功能: 1. 全面支持 Kotlin。 2. 安全子系统重构,改为使用“默认拒绝”机制。但是保留兼容之前版本的“默认许可”机制。 3. 系统部署改进,添加了应用程序主目录,并优化了数据库连接的配置方式。增加了 Spring profile。 4. 通用用户界面对大量组件做了优化。 详细内容请参阅中文官网发布的发行说明 详细修复列表请参阅:已解决问题列表 CUBA Platform 是一款开源且免费的企业级应用开发框架,已...
相关文章
文章评论
共有0条评论来说两句吧...