Solon 框架!
Solon 是新一代,Java 企业级应用开发框架。从零开始构建(No Java-EE),有灵活的接口规范与开放生态。采用商用友好的 Apache 2.0 开源协议,是“杭州无耳科技有限公司”开源的根级项目,是 Java 应用开发的生态基座(可替换美国博通公司的 Spring 生态)。
- 追求: 快速、小巧、简洁
- 提倡: 克制、高效、开放
7年开源时间,累计代码提交1.6万次 ,近半年下载量1200万次。
- 有透明可预期的《版本发布与维护计划》
- 有“【社区交流】”和“【商业服务】”双重技术支持
同时支持运行时环境(不基于 java-ee 构建,所以可以同时兼容):
- java8, java11, java17, java21, java24
有什么特点(相对 Java Spring 方案)?
特点 | 描述 |
---|---|
更高的计算性价比 | 并发高 700%;内存省 50% |
更快的开发效率 | 代码少;入门简单;启动快 10 倍(调试快) |
更好的生产与部署体验 | 打包小 90% |
更大的兼容范围 | 非 java-ee 架构;同时支持 java8 ~ java24,graalvm native image |
最新的 techempower 测试数据:
- https://www.techempower.com/benchmarks/#hw=ph&test=json§ion=data-r23
- https://www.techempower.com/benchmarks/#hw=ph&test=plaintext§ion=data-r23
项目架构示意图(全场景应用开发支持)
最近更新了什么?(每个版本都会有满满的清单)
- 插件 solon-flow stateful 二次预览
- 新增 solon-ai-repo-opensearch 插件
- 新增 hibernate-jakarta-solon-plugin 插件
- 新增 solon-web-webservices-jakarta 插件
- 新增 solon 接口版本 version 支持
- 优化 solon-test RunnerUtils 的缓存处理,原根据“启动类”改为根据”测试类“缓存
- 优化 solon
@Inject
注解目标范围增加 METHOD 支持 - 优化 solon-expression StandardContext 添加 target = null 检测
- 优化 solon-cloud DiscoveryUtils:tryLoadAgent 兼容性
- 优化 solon-cloud Config pull 方法,确保不输出 null
- 优化 mybatis-solon-plugin 插件配置的加载时机(mappers 之前)
- 添加 solon-test SolonJUnit5Extension,SolonJUnit4ClassRunner afterAllDo 方法(如果是当前启动类,则停止 solonapp 实例)
- 添加 solon-ai Options:toolsContext 方法
- 添加 solon-flow stateful FlowStatefulService 接口,替换 StatefulFlowEngine(确保引擎的单一性)
- 添加 solon-flow
FlowEngine:statefulService()
方法 - 添加 solon-flow
FlowEngine:getDriverAs()
方法 - 添加 hibernate-solon-plugin 对 PersistenceContext、PersistenceUnit 注解的支持
- 添加 hibernate-solon-plugin 对 PersistenceContext、PersistenceUnit 注解的支持
- 调整 solon 取消 --cfg 对体外文件的支持(如有需要通过 solon.config.load 加载)
- 调整 solon-flow stateful 相关概念(提交活动状态,改为提交操作)
- 调整 solon-flow stateful StateType 拆分为:StateType 和 Operation
- 调整 solon-flow stateful StatefulFlowEngine:postActivityState 更名为 postOperation
- 调整 solon-flow stateful StatefulFlowEngine:postActivityStateIfWaiting 更名为 postOperationIfWaiting
- 调整 solon-flow stateful StatefulFlowEngine:getActivity 更名为 getTask
- 调整 solon-flow stateful StatefulFlowEngine:getActivitys 更名为 getTasks
- 调整 solon-flow stateful StatefulFlowEngine 更名为 FlowStatefulService(确保引擎的单一性)
- 调整 solon-ai-core ToolCallResultJsonConverter 更名为 ToolCallResultConverterDefault 并添加序列化插件支持
- 调整 solon-ai-mcp PromptMapping,ResourceMapping 取消 resultConverter 属性(没必要了)
- 移除 mybatis-solon(与 mybatis-solon-plugin 重复)
- 修复 solon cookieMap 名字未区分大小写的问题(调整为与其它框架一至)
- 修复 solon-ai-core ChatModel:stream:doOnNext 可能无法获取 isFinished=true 情况
- 修复 solon-ai-core ChatModel:stream:doOnNext 可能无法获取 isFinished=true 情况
- 修复 solon-web-servlet SolonServletFilter 链的传递处理问题(未处理且200才传递,说明未变)
- luffy 升为 1.9.5
- liquor 升为 1.5.7
- snack3 升为 3.2.135
项目仓库地址?
- gitee:https://gitee.com/opensolon/solon
- gitcode: https://gitcode.com/opensolon/solon
- github:https://github.com/opensolon/solon
官网?
- https://solon.noear.org