YMP v2.0.6 发布,轻量级 Java 应用开发框架

来源: 投稿
2019-01-03 08:51:00

YMP v2.0.6 发布了!本次版本更新主要新增若干新特性并针对一些已知问题进行修复及性能优化。

为了让YMP框架能够在Android环境中使用,本次更新已支持编码方式初始化框架各模块;并针对Serv服务端提供会话管理器,用于管理已连接的TCP或UDP客户端会话以及对会话空闲检测、流量监听等;

新版本已提交至Maven中央库,可以通过以下配置获取各模块依赖:

<dependency>
    <groupId>net.ymate.platform</groupId>
    <artifactId>ymate-platform-<MODULE_NAME></artifactId>
    <version>2.0.6</version>
</dependency>

请将<MODULE_NAME>替换为具体模块名,模块详见: The Central Repository Search Engine

主要更新内容:

核心(Core)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [新增] 优化调整框架配置支持自定义加载器和代理工厂并新增基于Javassist的代理工厂接口实现;

  • [新增] 空操作代理工厂(使用它表示需要禁用框架的AOP特性, 主要用于Android应用);

  • [新增] 为ClassUtils类新增通过读取META-INF/services/路径下与类名称相同的配置文件加载实例(类似ServiceLoader方法);

  • [新增] 为RuntimeUtils类新增获取当前程序执行进程编号方法;

  • [新增] 为FileUtils类新增从JAR包中提取/META-INF/{prefixPath}目录下资源文件并复制到{targetFile}指定目录方法;

  • [新增] 在类扫描过程中通过excluded_packages参数排除指定类或包;

  • [新增] 新增ThreadUtils线程工具类支持执行结果过滤并调整相关代码;

  • [新增] 新增Speedometer速度计数器工具对并发处理量计算;

  • [新增] 新增ExecutableQueue可执行队列服务类;

  • [优化] 框架初始化时优先尝试加载配置体系模块以保证配置文件加载路径的一致性;

  • [优化] 优化框架初始化配置及类对象扫描性能; 不再推荐直接向框架对象管理器直接注册实例象;

  • [优化] 自动扫描路径分析及各模块配置解析逻辑;

  • [优化] 优化RecycleHelper全局对象资源回收器支持异步操作;

  • [优化] 优化CodecUtils加解密工具;

  • [优化] 优化ConsoleTableBuilder类使用markdown格式输出包含下划线的内容进行转义;

  • [优化] 拦截器支持框架自动扫描和IoC依赖注入特性;

  • [优化] 被拦截目标方法的返回值类型为void则通过异常向上层返回拦截器执行结果;

  • [优化] 为PropertyStateSupport类构造方法增加ignoreNull参数用于设置是否忽略空值;

  • [优化] 环境上下文对象统一实现IContext接口;

  • [优化] 移动MimeTypeUtilsStringEscapeUtils两个工具类至核心包;

  • [优化] 代码优化及相关文档内容更新;

  • 查看模块文档...

配置体系(Configuration)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [优化] 针对插件中的配置对象支持通过注解自动扫描注册;

  • [优化] 代码优化及相关文档内容更新;

  • 查看模块文档...

缓存 (Cache)

  • [新增] 优化调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [优化] 优化缓存提供者接口实现类结构;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

日志(Log)

  • [新增] 优化调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

持久化(JDBC)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [优化] 优化数据源适配器配置及生成实体时对数据库表备注信息中存在的双引号进行转义;

  • [优化] 针对插件中的存储器支持通过注解自动扫描注册;

  • [优化] 基于查询对象构建SQL语句不支持Fields对象使用排除方式, 将输出日志警告并清空字段集合;

  • [优化] 优化实体生成器使其支持输出csv格式并支持不生成任何文件仅输出表结构;

  • [优化] 优化实体生成器字段描述信息的输出格式;

  • [优化] 优化实体生成器模板;

  • [优化] 当分页查询时,若count为0则直接返回空结果集, 避免执行后面的分页语句;

  • [优化] 强制采用SQL92定义的标准统计行数的语法count(*)进行记录行数统计;

  • [优化] 优化抽象实现saveOrUpdate方法的Fields的参数仅作用于更新操作;

  • [优化] 修正获取自增长字段值异常问题;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

插件(Plugin)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [新增] 优化插件模块扫描及加载处理逻辑并简化配置;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

服务 (Serv)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [新增] 新增会话管理器辅助类对客户端会话进行统一管理并支持服务端并发量实时监控;

  • [新增] 新增会话管理器对UDP服务端的支持;

  • [新增] 新增空闲会话检查器支持将超过预设时间的会话对象从管理器中移除并触发相关事件回调;

  • [新增] 新增客户端断线重连检测间隔配置项并触发重连事件监听回调;

  • [新增] 新增判断客户端是否正在关闭的接口方法并调整心跳和重连服务的处理逻辑;

  • [优化] 优化会话及客户端断线重连的判断条件;

  • [优化] 优化客户端与服务端连接已建立且准备就绪状态判断的准确性;

  • [优化] 优化服务端与客户端构建方式支持手动创建实例;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

Web框架 (WebMVC)

  • [新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;

  • [新增] 优化配置并新增错误处理器接口默认实现以及针对Web开发中常用的工具方法和响应结果处理工具类(大量移植Framework项目中的稳定代码);

  • [新增] 添加获取控制器请求映射接口方法;

  • [新增] 请求分发器新增默认Content-Type设置项;

  • [优化] 移动MimeTypeUtilsStringEscapeUtils两个工具类至核心包;

  • [优化] 被注册的控制器类不强制必须使用@Controller注解声明;

  • [优化] 优化错误消息处理;

  • [优化] 优化配置读取及错误消息处理;

  • [优化] 优化JspView输出流编码问题;

  • [优化] 为上传文件包装器接口新增并实现直接获取临时文件File对象方法;

  • [优化] 被拦截目标方法的返回值类型为void则通过异常向上层返回拦截器执行结果;

  • [优化] 修正二进制视图BinaryView对象输出字符串内容长度的判断;

  • [优化] 修正Freemarker配置对象初始化后未赋值全局变量;

  • [优化] 代码优化配置及相关文档内容更新;

  • 查看模块文档...

One More Thing

YMP是一个非常简单、易用的轻量级Java应用开发框架,涵盖AOP、IoC、WebMVC、ORM、Validation、Plugin、Serv、Cache等特性,让开发工作像搭积木一样轻松是我们一直不懈努力的目标!

YMP不仅提供便捷的Web及其它Java项目的快速开发体验,也将不断提供更多丰富的项目实践经验。

了解更多有关YMP框架的内容,请访问官网:http://www.ymate.net/

展开阅读全文
点击加入讨论🔥(2) 发布并加入讨论🔥
2 评论
12 收藏
分享
返回顶部
顶部