Hasor 4.1.0 发布,稳定性大幅提升并提供了 all-in-one

基于 Java 应用开发框架,无论是应用类程序还是框架类工具。Hasor都会是一个强有力的基石。

../_images/CC2_403A_3BD5_D581.png

本次更新主要带来的方面是

  • 稳定性提升,core\web\db\dataql\tconsole 这些组件的单测覆盖率大幅提升,并且这次更新还发布了 覆盖率报告 

  • hasor-core 开始全面兼容 jsr332 向标准靠齐
  • 另外这次新增了 tConsole 和 DataQL 两个子框架。
  • 最后新增了 all-in-one 包,只需要依赖一个 jar 包。就可以实现 hasor 全系引入。

下面是本次更新的详细 

Hasor v4.1.0 (2020-02-03)
------------------------------------

Commons

  • 修复 ResourcesUtils 和 ScanClassPath,IO 文件句柄泄露问题。
  • BasicFuture 的 callback,当没有实现CancellFutureCallback的时候时候,会触发failed。
  • DataQL 中的 InterBeanMap 更名为 BeanMap 移到 commons 中。
  • DB 中的 LinkedCaseInsensitiveMap 移到 commons 中。

Core

  • 改造 hasor.core 全面支持 JSR-330。
  • 全新的 SPI 能力。
  • 单测覆盖率达到 90%,修复若干潜在的问题。
  • 主 namespace ‘http://project.hasor.net/hasor/schema/main’ 统一改为 ‘http://www.hasor.net/sechma/main
  • @InjectSettings 注解增加,命名空间支持。
  • 默认配置文件名 hasor-config.xml 改为 hconfig.xml、不在提供环境参数属性文件的机制。
  • 其它大量接口上和内部执行机制的优化

Web

  • 单测覆盖率达到 90%,修复若干潜在的问题。
  • hasor-env-properties 参数不在有效。
  • @Produces 注解行为变化为不在影响使用哪个渲染器,而是负责指明使用什么类型作为 response 的 ContentType。
  • j2ee Servlet 会被转换成 MappingTo 运行。j2ee Filter 会被转换成 InvokerFilter 运行。
  • 新增 OneConfig 汇总了FilterConfig, ServletConfig, InvokerConfig 三个接口的实现。
  • ListenerPipeline 不在需要,取而代之使用 SPI 机制来替代。
  • RenderInvoker 接口不在提供 lockViewType 相关方法。
  • MimeType 接口在获取 mimeType 信息时改为优先框架内的数据,如果框架内数据招不到在到 context 上查找。

DB

  • mybatis 插件回归 hasor-db

tConsole

  • 重构,对于多行输入支持用户自定义命令结符号or字符串。重构后单测覆盖率达到 90%。
  • 支持 server 模式通过 Socket 端口运行
  • 支持 基于标准输入输出流运行
  • hasor-boot 能力被完完全全整合,因此 Hasor 将不在提供 hasor-boot。

DataQL

  • 重构,放弃 javacc 更换成 antlr4。antlr4 更加智能。AST 模型仍然不变。重构后单测覆盖率达到 90%。
  • DataQL 大量新语法新特性。具体参看语法参考手册。一些老的语法形式也不在支持,因此 DataQL 的语法和以前有明显变化。
  • 运行时内存模型:确定为 两栈一堆
  • 指令集系统:不在需要 ASM、ASA、ASO 三个指令,取而代之的是更严谨的指令集。
  • SDK:函数包能力
  • DataModel数据模型:增加 unwrap 方法,用来解开 DataModel 包裹
  • 新增 Fragment 机制允许 DataQL 执行外部非 DataQL 语法的代码片段。
  • BeanContainer 改为 Finder,删掉 UdfSource、UdfManager、UdfResult 不在需要这些概念。
  • 原有 dql test case 语句文件统一转移到 _old 目录下面备用。

RSF

  • rsf 使用 tconsole 的新接口
  • 注册中心暂不可用,下几个版本会重新设计。
  • rsf 的 InterAddress 支持域名传入,但是toString 的时仍然会转换为 ip。

其它

  • 删除 Hasor 默认提供的 JFinal 插件支持。理由是 JFinal 功能和 Hasor 体系重叠,同时 Hasor 的所有功能都是独立。
  • 整合 Hasor 及其容易因此没有提供集成代码的必要。
  • 新增 Hasor-all 包。

猜你喜欢

转载自www.oschina.net/news/113151/hasor-4-1-0-released