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
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[新增] 优化调整框架配置支持自定义加载器和代理工厂并新增基于 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
接口;
[优化] 移动 MimeTypeUtils
和 StringEscapeUtils
两个工具类至核心包;
[优化] 代码优化及相关文档内容更新;
查看模块文档...
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[优化] 针对插件中的配置对象支持通过注解自动扫描注册;
[优化] 代码优化及相关文档内容更新;
查看模块文档...
[新增] 优化调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[优化] 优化缓存提供者接口实现类结构;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
[新增] 优化调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[优化] 优化数据源适配器配置及生成实体时对数据库表备注信息中存在的双引号进行转义;
[优化] 针对插件中的存储器支持通过注解自动扫描注册;
[优化] 基于查询对象构建 SQL
语句不支持 Fields
对象使用排除方式, 将输出日志警告并清空字段集合;
[优化] 优化实体生成器使其支持输出 csv
格式并支持不生成任何文件仅输出表结构;
[优化] 优化实体生成器字段描述信息的输出格式;
[优化] 优化实体生成器模板;
[优化] 当分页查询时,若count为0则直接返回空结果集, 避免执行后面的分页语句;
[优化] 强制采用 SQL92
定义的标准统计行数的语法 count(*)
进行记录行数统计;
[优化] 优化抽象实现 saveOrUpdate
方法的 Fields
的参数仅作用于更新操作;
[优化] 修正获取自增长字段值异常问题;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[新增] 优化插件模块扫描及加载处理逻辑并简化配置;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[新增] 新增会话管理器辅助类对客户端会话进行统一管理并支持服务端并发量实时监控;
[新增] 新增会话管理器对UDP服务端的支持;
[新增] 新增空闲会话检查器支持将超过预设时间的会话对象从管理器中移除并触发相关事件回调;
[新增] 新增客户端断线重连检测间隔配置项并触发重连事件监听回调;
[新增] 新增判断客户端是否正在关闭的接口方法并调整心跳和重连服务的处理逻辑;
[优化] 优化会话及客户端断线重连的判断条件;
[优化] 优化客户端与服务端连接已建立且准备就绪状态判断的准确性;
[优化] 优化服务端与客户端构建方式支持手动创建实例;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
[新增] 调整框架初始化逻辑使各模块支持通过编码方式配置(非配置文件)启动;
[新增] 优化配置并新增错误处理器接口默认实现以及针对 Web
开发中常用的工具方法和响应结果处理工具类(大量移植 Framework
项目中的稳定代码);
[新增] 添加获取控制器请求映射接口方法;
[新增] 请求分发器新增默认 Content-Type
设置项;
[优化] 移动 MimeTypeUtils
和 StringEscapeUtils
两个工具类至核心包;
[优化] 被注册的控制器类不强制必须使用@Controller注解声明;
[优化] 优化错误消息处理;
[优化] 优化配置读取及错误消息处理;
[优化] 优化 JspView
输出流编码问题;
[优化] 为上传文件包装器接口新增并实现直接获取临时文件File对象方法;
[优化] 被拦截目标方法的返回值类型为 void
则通过异常向上层返回拦截器执行结果;
[优化] 修正二进制视图 BinaryView
对象输出字符串内容长度的判断;
[优化] 修正 Freemarker
配置对象初始化后未赋值全局变量;
[优化] 代码优化配置及相关文档内容更新;
查看模块文档...
YMP是一个非常简单、易用的轻量级Java应用开发框架,涵盖AOP、IoC、WebMVC、ORM、Validation、Plugin、Serv、Cache等特性,让开发工作像搭积木一样轻松是我们一直不懈努力的目标!
YMP不仅提供便捷的Web及其它Java项目的快速开发体验,也将不断提供更多丰富的项目实践经验。
了解更多有关YMP框架的内容,请访问官网: http://www.ymate.net/