v5.3.0 (2026-10-05)
<dependency>
<groupId>net.hasor</groupId>
<artifactId>hasor-web</artifactId>
<version>5.3.0</version>
</dependency>
更新内容
- 新增
- 支持方法级
@MappingTo路由映射。 - 支持类级公共路径前缀。
- 支持自动扫描路由。
- 支持按 HTTP 方法区分同一路径。
- 启动时检查路由冲突。
- 新增 MVC 拦截器
HandlerInterceptor。 - 新增统一异常处理器
ExceptionHandler。 - 新增
Invoker.setSkipRender(),支持跳过结果渲染。 - 静态资源支持
CacheControl缓存策略。 @Bean工厂方法参数支持@Inject注入。
- 支持方法级
- 修复
- 修复未被引用的单例
@Bean未在启动时初始化的问题。 - 修复
voidAction 的异常处理结果无法渲染的问题。 - 修复请求结束后参数缓存未清理的问题。
- 修复未匹配 Action 时读取内容类型的空指针异常。
- 修复 Boot 启动时 Web 访问地址日志缺失或不准确的问题。
- 修复未被引用的单例
- 优化
- 统一 MVC 结果渲染流程。
- 分离异步请求的错误处理与结束逻辑。
- Boot Loader 内置并隔离运行依赖。
- Cobble 升级至
5.0.4。 - IDE 代码格式配置移至
community目录。
升级说明
ResourceBinder.cacheControl改用CacheControl,详见静态资源。- 单例
@Bean在启动时创建并执行initMethod,需检查初始化时机。 - 自定义
Invoker需实现setSkipRender()和isSkipRender()。 - 自定义
WebApiBinder需实现bindInterceptor(...)和addExceptionHandler(...)。 - 直接调用
RenderProcessor时,先执行initInvoker(invoker),再用invoke(invoker, finalResult)渲染结果。 - 自定义
AsyncInvocationWorker时,由finish(boolean)负责结束与重新分发,详见异步请求。