|
|
wastnet v1.0.2 发布:强类型配置与 MVC 模块独立
wastnet 是一款完全自研、零第三方依赖的轻量级 Java 网络应用框架,核心基于 JDK 原生 NIO 构建 Reactor 多路复用模型,不依赖 Netty、Tomcat 等任何第三方网络库。其 HTTP/2 协议栈从 HPACK、Huffman 到 ALPN 均为自主实现,并支持直接加载 PEM 证书、原生 WebSocket / SSE,性能可与 Undertow 等成熟框架正面对比。
本次更新聚焦工程化重构与可用性增强:引入强类型 Option 配置机制、将注解式 MVC 从核心拆分为独立 wastnet-mvc 模块,并在 HTTP/2、TCP 层、注解 MVC 结果处理等多方面进行了重构与修复。
新增
• 强类型 Option 配置机制:新增 HttpOptions / SocketOptions / Option,配置按服务实例隔离,支持多服务间隔离。
• 独立 wastnet-mvc 模块:注解驱动的 MVC / IoC 从核心拆分为独立模块,按需引入、体积更可控。
• 健康检查可配置:支持全局配置健康检查响应内容类型与响应体。
• SSE request() 访问器:SseEmitter 新增 request() 方法,便于在 SSE 处理器中读取请求上下文。
改进
• HTTP 请求体解码重构(HttpBodyDecoder 系列、HttpDecodedRequest / HttpDecodedResponse / HttpDefaultResponse 等)。
• HTTP 头部与消息处理重构(HttpHeaderUtils、HttpMessage、HttpRequestDecoder 等)。
• 路由配置优化(HttpRouterHandler、HttpServerChannelHandler)。
• 注解 MVC 结果处理增强:按 ContentType 注册转换器、内置 TEXT 转换器、视图解析器与默认结果处理。
• HTTP/2 流控、超时与 Huffman 解码重构;H2 消息读取与帧处理重构。
• TCP 层重构(ChannelContext、ChannelRunner、NioConfig / NioEngine、SocketConf / SocketOptions 等)。
• JDK8 兼容简化:移除 JDK9 运行时分支(RuntimeEnvJDK9Plus 删除)。
• 反向代理层适配调整(HttpProxyConfig / HttpProxyVariables / 各 Adapter)。
• 文件上传 Multipart 处理调整。
修复
• 修复 URI 解码时值中包含等号被截断的问题。
• 增强静态资源路由符号链接防护。
• 完善 HTTP/2 流清理与连接关闭处理。
• 修正 HTTP/2 PING_ACK 标志位值以符合 RFC 7540。
Maven 引入
- <dependency>
- <groupId>io.github.wycst</groupId>
- <artifactId>wastnet-core</artifactId>
- <version>1.0.2</version>
- </dependency>
复制代码 使用注解式 MVC 只需引入 wastnet-mvc(已依赖 wastnet-core),基础场景引入 wastnet-core 即可,二者二选一。 相关链接
• Gitee:https://gitee.com/xiaoch0209/wastnet
• GitHub:https://github.com/wycst02/wastnet
• 协议:Apache License 2.0
完整变更见 CHANGELOG。
原文链接 |
|