🎉 信创首选,国产开源 Servlet 容器新版发布
1、smart-servlet 简介
smart-servlet 是目前 Gitee、Github 平台上首款,也是 唯一款全栈核心技术自研 的国产开源的 Servlet 容器项目。
产品特色
-
国产血统:核心技术 100% 全栈自研。
-
性能优越:搭载最新版通信微内核 smart-socket。
-
安全可靠:严格遵循协议规范;支持加密传输方式。
-
极致轻量:发行包不足 800KB
-
简洁易用:支持 War 包、springboot、maven-plugin 等多种运行模式,使用体验100%兼容 Tomcat。
2、 版本更新
上个版本部分内容:
最近社区中最具热度的事件莫过于 Java 21 的发布,虽然这个版本没有特别吸引我的地方,但为了项目发展需要,适当蹭一蹭这个热度。所以作了一个较为冲动的决定:将 smart-servlet 的开发、运行环境切换为 Java 21;同时, servlet 适配的规范提升至了 Jakarta Servlet 5.0。希望通过这样的调整,能为这个项目注入新的活力。
上个版本确实是冲动了。思来想去,再结合社区朋友的建议,当下适合 smart-servlet 去服务的目标用户只有一类:有着信创要求,且难以承受昂贵国产Servlet 容器的中小企业。
此类用户所维护的系统,大多数还停留在低版本 Servlet。smart-servlet 首先要考虑的是帮助这类用户平滑的完成信创要求,再来考虑技术体系升级的事。
所以,此次 smart-servlet 再次回归至 JDK8 和 Servlet 4.0 。
本次更新内容:
-
提供不完整的 AsyncContext 规范实现。
-
提供 locale-encoding-mapping-list 规范的实现
-
优化 ServletResponse#flushBuffer 规范实现。
-
优化 ServletResponse#setLocale 规范实现。
-
提供请求异步处理能力。
-
新增控制台技术支持信息露出。
-
优化日志输出。
-
清理大量无用代码。
3、快速上手
我们提供了三种方式启用 smart-servlet,您可根据实际情况选择其中适用的一种。
方式一:maven 插件
这是一种类似:tomcat-maven-plugin
的使用方式,通常应用于 Java Web 工程的本地开发环境。集成该插件只需在 pom.xml 中加入以下代码,便可以在 IDE 中启动 servlet 服务。
<build> <plugins> <plugin> <groupId>org.smartboot.servlet</groupId> <artifactId>smart-servlet-maven-plugin</artifactId> <version>0.6</version><!--最新版本 --> <configuration> <port>8080</port> <path>/portal</path> </configuration> </plugin> </plugins> </build>
插件的版本建议采用最新版本,另外主要的配置项包括:
-
port:servlet 服务启动的监听端口
-
path:Servlet 容器上下文路径,即 ContextPath,通常以 / 表示。当然也支持自定义,但必须以 / 开头 完成配置后在控制台输入:
mvn package smart-servlet:run
即可。
方式二:smart-servlet-spring-boot-starter
用过 springboot 的 spring-boot-starter-tomcat
或者 spring-boot-starter-undertow
的朋友应该对此不陌生。
smart-servlet-spring-boot-starter
本质上就是 smart-servlet 对 spring-boot-starter-web 的另一种适配。
只需按照以下方式调整 springboot 工程中 pom.xml 文件的配置,便可将 springboot 的默认 Servlet 容器替换成 smart-servlet。
<dependencys> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <!-- Exclude the Tomcat dependency --> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <!-- Use smart-servlet instead --> <dependency> <groupId>org.smartboot.servlet</groupId> <artifactId>smart-servlet-spring-boot-starter</artifactId> <version>0.6</version><!--最新版本 --> </dependency> </dependencys>
方式三:发行包
发行包适用于 War 包的部署方式,也是生产环境中常用的一种形式。(PS:联系作者获取最新版)
出于项目发展需要,smart-servlet 将面向信创企业提供 10 份为期 1 年的 免费试用 资格。
名额有限,先到先得~

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
魔豆文库 moredoc v2.3.0 发布,优化页面体验和全文索引
魔豆文库MOREDOC,使用 Go 语言开发实现的文库解决方案,dochub文库的重构版本,支持 office (全部类型)、PDF、TXT、EPUB、MOBI 等多种文档格式的在线阅读浏览,支持无限级分类、文档批量上传、文档批量转换、全文搜索、云存储、网络爬虫、VIP、手机号登录注册以及支付宝和微信支付等功能,拥有简洁美观的用户视觉和功能体验,以及配套的微信小程序。 技术栈 Golang :gin + gRPC + GORM Vue.js : nuxt2 + element-ui Database : MySQL 5.7+ 升级日志 社区版(开源版)升级日志 修复因设置了广告起止时间后网站广告无法正常显示的问题。 修复列表页等右侧关键字、相关文档列表在页面滚动到底部出现遮挡的问题。 支持隐藏文档列表页右侧关键字(在 系统配置-> 展示配置中可设置隐藏关键字)。 支持在前台快速管理文档: 对于普通用户,可以编辑和删除文档,对于有权限的网站管理员,还可以对文档进行禁用或者是推荐。 在首页、文档列表页、文档预览页等增加页面骨架(Skeleton),用以消除页面内容在加载时出现闪动的情...
- 下一篇
🎉 领域模型即服务 | Wow 2.13.6 发布
领域驱动|事件驱动|测试驱动|声明式设计|响应式编程|命令查询职责分离|事件溯源 官方文档:https://ahoowang.gitee.io/wow/ 更新内容 增强BI模块生成ETL实时同步脚本特性。 聚合命令(Command): 包含用户发送的所有命令。 状态事件(StateEvent): 包含聚合状态的完整变化历史,同时记录了引发这些状态变更的事件关联信息。 最新状态事件(LastStateEvent): 包含最新的聚合状态,类似于传统数据库中的表,专门用于存储每个聚合根的最新状态信息。 快照展开视图: 相比于传统数据库的关系表,聚合根快照是以聚合根为中心组织在一起的。 一对一、一对多的关系也是维护在聚合根内部的,所以并不会出现关系表的情况。 但是在数据分析时,我们需要将聚合根的快照展开,以便基于关系模式进行更有深度的数据分析。 Wow 框架提供的 ETL 脚本工具能够将聚合根快照逐层展开,形成关系清晰的视图,该展开视图甚至可以作为数据仓库的大宽表,为业务决策提供更清晰、更全面的数据支持。 特性(core):EventStore支持tailCursorId/archiveAgg...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启