公共工具包 设计初衷为解决代码复用问题,其中最具特色的工具为cloud.agileframework.common.util.object.ObjectUtil中的对象深度转换能力,方法为ObjectUtil.to 该能力是Agile系列框架高代码复用率的根本所在。其大量应用于请求参数解析、验证、持久层查询结果转换等功能当中,是目前开源项目中独树一帜的功能,其能够完成n层对象嵌套、 集合类型嵌套、模糊识别(如驼峰、下划线风格属性互转)、逗号分隔字符串转集合、日期字符串分析、注解别名、识别set、get、复杂属性拷贝等能力。
动态sql解析器 设计初衷是为JPA规范下持久层框架提供类似于MyBatis一样的动态sql处理能力,该组件在Alibaba Druid的SQL语法解析能力基础上,增加了根据调用参数动态 判断剔除语法段能力
Agile系列框架-缓存组件 缓存切换 切换方式与spring boot cache切换方式一致,均使用元数据spring.cache.type进行配置,当不存在该配置情况下,默认使用内存介质 统一操作方式 解析器通过提供CacheUtil、AgileCache,屏蔽掉各类型缓存介质的操作差异,以最简单的形式提供开发者开箱即用的缓存操作 缓存过期 支持存储过程中直接设置缓存过期时间 分布式/集群锁 当缓存介质为redis时,通过CacheUtil或AgileCache的lock与unlock提供锁操作 集合数据操作 CacheUtil、AgileCache针对不同存储介质提供一致性的集合数据操作API,参考快速入门 支持Hibernate二级缓存 提供EhCache与Redis作为Hibernate二级缓存介质,并提供元数据形式的EhCache缓存配置方式。并且确保spring与hibernate二级缓存共享缓存管理器CacheManager 支持缓存介质扩展 默认提供内存、EhCache、Redis三种缓存介质,开发人员可以根据实际需求,自行实现抽象类AgileCache
字典解析器 启动自动加载 集成该组件后,字典数据加载将伴随spring应用启动,将持久层字典数据加载如缓存,以便提高缓存查询性能 缓存同步 集成缓存组件agile-cache可实现缓存方式切换spring.cache.type,如redis、ehcache、memory等方式,缓存使用请参照缓存组件https://gitee.com/agile-framework/agile-cache 复杂翻译 通过提供工具类cloud.agileframework.dictionary.util.DictionaryUtil,实现诸多复杂字典翻译方式,如字典码与字典值相互转换,根据父子字典信息翻译、全路径字典值/码翻译、字典注解解析 集合数据字典翻译、自定义字典分隔符、指定默认值等等一系列工具 字典注解 用于pojo类属性上添加cloud.agileframework.dictionary.annotation.Dictionary字典注解,通过DictionaryUtil.cover方法或内嵌至持久层组件中,实现无感翻译。 agile-jpa组件中已集成该组件实现无感翻译。 自定义字典
任务调度组件 持久化定时任务 任务数据支持直接落入数据库,防止重启数据丢失,持久化防止支持自定义扩展 通过实现接口cloud.agileframework.task.TaskService,可以自定义持久化方式, 如落入MySQL、Redis、Oracle等。默认持久化方式为内存形式,内存形式不支持重启。 启动加载 程序伴随spring应用启动时自动加载定时任务数据,无需人工干预 动态修改 在程序运行过程中,支持通过restful api或自定义程序调用,动态添加、修改、删除定时任务 且不需要重启服务 周期时间任务 支持spring cron表达式形式的周期性定时任务 固定时间点任务 支持以时间戳为表达式的固定时间点任务,如仅需要执行一次的定时任务。 多表达式 支持在一个定时任务中,输入多个固定或周期任务表达式,以英文分号分隔,则任务将同时识别 多表达式,针对同一个任务,避免了按不同周期或时间点创建多个任务定义的繁琐操作,也便于维护。 任务冲突 任务冲突分应用级别冲突与表达式级别冲突: 应用级别冲突指在分布式或集群中,相同任务,在同
最近一年贡献:0 次
最长连续贡献:0 日
最近连续贡献:0 日
贡献度的统计数据包括代码提交、创建任务 / Pull Request、合并 Pull Request,其中代码提交的次数需本地配置的 git 邮箱是 Gitee 帐号已确认绑定的才会被统计。