Java Solon v2.7.6 发布

java,solon,v2 · 浏览次数 : 3

小编点评

**Solon框架** Solon 是一个开放原子开源基金会孵化项目,致力于构建更高性能、更易于维护的 Java 应用开发框架。它采用 **开放生态** 的设计,提供灵活的接口规范和开放标准,以促进代码可移植性。 **关键特点:** - **高性能:**并发高 2~ 3 倍;内存省 50%更快的开发效率:内核小,入门快;调试重启快 5 ~ 10 倍更好的生产与部署体验。 - **生态友好:**支持各种编程语言,包括 java、java8 和 java22。 - **易于使用:**提供简洁的 API,使其易于学习和使用。 - **可扩展:**可以根据项目的具体需求进行定制。 - **易于调试:**提供调试工具和日志记录,帮助开发人员定位问题。 - **安全可靠:**采用安全框架,确保数据安全。 **其他优势:** - **支持多种编程语言:**支持 java、java8 和 java22。 - **高性能:**提供优异的性能,使其适合构建性能敏感的应用程序。 - **易于维护:**采用模块化的设计,使代码更易于维护。 - **可移植性:**提供开放生态,使其易于与各种框架和工具集成。

正文

Java Solon 是什么框架?

Java “新的”应用开发框架。开放原子开源基金会,孵化项目。从零开始构建(非 java-ee 架构),有灵活的接口规范与开放生态。

  • 追求: 更快、更小、更简单
  • 提倡: 克制、简洁、高效、开放、生态

有什么特点?

更高的计算性价比:

  • 并发高 2~ 3 倍;内存省 50%

更快的开发效率:

  • 内核小,入门快;调试重启快 5 ~ 10 倍

更好的生产与部署体验:

  • 打包小 50% ~ 90%;镜像拦取快,启动快(5 ~ 10 倍)

更大的运行时兼容范围:

  • 非 java-ee 架构;同时支持 java8 ~ java22

最近更新了什么?

  • 新增 solon-docs-openapi2-javadoc 插件
  • 新增 solon.serialization.properties 插件(支持 ?a.b=1 prop 风格的参数)
  • 添加 solon.boot.jetty 原生编译支持
  • 添加 solon.boot.undertow 原生编译支持
  • 添加 solon 对 classpath*: 表达式支持(兼容旧的习惯)
  • 添加 solon Utils:pid 方法(方便获取进程号)
  • 添加 solon.data TranUtils:getDataSourceProxy 方法
  • 添加 solon.cloud CloudProps:getNamespace 方法,允许每个中间件有自己 namespace 配置
  • 添加 solon.net WebSocketListener::onPing,onPong 方法,允许获得 ping/pong 的监听
  • 添加 solon.net WebSocketListenerSupplier 接口,简化 ws 扩展适配
  • 添加 solon.validation 校验出错的结果里带上当前校验的名称(该名称是当前校验的参数名称或者是实体对象字段名称)
  • 添加 nami json 解码器,对普通 string 的支持(如果返回类型为 string ,则解码失败时以普通 string 返回)
  • 添加 solon.config.load 对资源表达式的支持(例:config/*.yml
  • 添加 solon.boot.smarthttp 对参数 key 的 urlDecode 处理
  • 优化 solon.net ToSocketdWebSocketListener 防止 websocket 恶意空连
  • 优化 非 solon 测试环境下,日志打印添加 pid 显示支持
  • 优化 ResourceUtil 扫描类或资源的能力,增加支持 *Mapper 表达式
  • 优化 Aot 时的函数注册处理(修复 原生运行时组件代理失败的问题)
  • 优化 Bean 集合的注入处理
  • 优化 StaticResourceHandler 对静态资源的压缩支持,改为先查找压缩文件
  • 修复 solon.boot.undertow 的 ws 适配在 window 下异常关闭处理时,无法触发 onClose 事件的问题
  • 修复 solon.boot.websocket.netty 接收二进制码时出错的问题
  • 修复 nami 在请求参数为空时被转换成GET操作的问题
  • 修复 solon.docs.openapi2 没有同步 operation.security 的问题。
  • 调整 solon.net websocket 没有路由记录时,将自动关闭(更安全)
  • 调整 solon Condition::onMissingBean 标为弃用
  • redisx 升为 1.6.3
  • fastjson2 升为 2.0.49
  • wood 升为 1.2.9
  • mybatis-flex 升为 1.8.8
  • snack3 升为 3.2.95
  • socket.d 升为 2.4.14

项目仓库地址?

官网?

与 Java Solon v2.7.6 发布相似的内容:

Java Solon v2.7.6 发布

Java “新的”应用开发框架。开放原子开源基金会,孵化项目。从零开始构建(非 java-ee 架构),有灵活的接口规范与开放生态。

Java异步判断线程池所有任务是否执行完成的方法

本文详细介绍了Java异步判断线程池所有任务是否执行完成的方法,分别介绍了使用ExecutorService和CountDownLatch的方法示例、使用ExecutorService的invokeAll方法和Future列表的方法示例、使用ExecutorService来异步执行多个Callabl...

面试官:Java线程可以无限创建吗?

哈喽,大家好,我是世杰。 ⏩本次给大家介绍一下操作系统线程和Java的线程以及二者的关联 1. 面试连环call Java线程可以无限创建吗? Java线程和操作系统线程有什么关联? 操作系统为什么要区分内核态和用户态? ⏩要想解答这些问题,我们要先从操作系统线程开始说起,让我们开始吧�

Java 方法中循环调用具有事务的方法

本文简要介绍了Java 方法中循环调用具有事务的具体方法示例,虽然@Transactional是Spring中最常用和推荐的方式,但是本文还简要介绍了其他5种方法可以实现类似的功能。

Java基础:线程的三种创建方式

一、继承Thread类 定义一个类继承线程类Thread 重写run()方法 创建线程对象 调用线程对象的start()方法创建线程 Thread类的常用API setName(String name):给线程取名字 getName():获取线程的名字 public static Thread cu

面试官:Java类是如何被加载到内存中的?

面试连环call Java类是如何被加载到内存中的? Java类的生命周期都有哪些阶段? JVM加载的class文件都有哪些来源? JVM在加载class文件时,何时判断class文件的格式是否符合要求? 类生命周期 一个类从被加载到虚拟机内存开始,到卸载出内存为止,它的整个生命周期将会经历加载、验

Java定时任务实现优惠码

在Java中实现定时任务来发放优惠码,我们可以使用多种方法,比如使用java.util.Timer类、ScheduledExecutorService接口,或者更高级的框架如Spring的@Scheduled注解。这里,我将以ScheduledExecutorService为例来展示如何实现这一功能

有手就会的 Java 处理压缩文件

@目录前言背景第一步:编写代码1.1 请求层1.2 业务处理层1.3 新增配置第二步:解压缩处理2.1 引入依赖2.2 解压缩工具类总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i、 提示:以下是本篇文章正文内容,下面案例可供参考 背景 在项目出现上传文件,其中文件包含压缩包,并

【进阶篇】Java 项目中对使用递归的理解分享

笔者在最近的项目开发中,遇到了两个父子关系紧密相关的场景:评论树结构、部门树结构。具体的需求如:找出某条评论下的所有子评论id集合,找出某个部门下所有的子部门id集合。

千万别忽视基础!十张图带你一步步理解Java内存结构!

发生内存泄漏或者内存溢出,如果对Java内存结构不清楚,那将会是一件非常麻烦的事情!本文笔者将为大家详解Java内存结构。