JDK8升级到JDK21 & SpringCloud升级

JDK8升级到JDK21 & SpringCloud升级

效果

内存占用率降低50%,启动速度提升40%。

升级

springboot 3.5.5
springcloud 2025.0.0和4.3.0
springcloudalibaba 2023.0.3.3
knife4j 4.5.0
mybatis-plus-boot-starter 3.5.14
mybatis-spring 3.0.5
javax.servlet.http.HttpServletRequest等都改为jakarta.servlet.http.HttpServletRequest

依赖包

<!--依赖版本管理--> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <maven.compiler.source>21</maven.compiler.source> <maven.compiler.target>21</maven.compiler.target> <skipTests>true</skipTests> <!-- custom variable --> <profile.env>local</profile.env> <!-- Dependency version --> <spring.boot.version>3.5.5</spring.boot.version> <nacos.version>2.2.3</nacos.version> <lombok.version>1.18.30</lombok.version> <slf4j.version>2.0.17</slf4j.version> <hutool.version>5.8.24</hutool.version> <commons-lang3.version>3.8</commons-lang3.version> <!-- <nacos.config.spring.boot.starter.version>0.2.7</nacos.config.spring.boot.starter.version>--> <!-- <nacos.discovery.spring.boot.starter.version>0.2.7</nacos.discovery.spring.boot.starter.version>--> <spring-cloud-dependencies.version>2025.0.0</spring-cloud-dependencies.version> <spring-cloud-alibaba-dependencies.version>2023.0.3.3</spring-cloud-alibaba-dependencies.version> <knife4j.version>4.5.0</knife4j.version> <httpclient.version>5.5</httpclient.version> <druid.version>1.2.27</druid.version> <mybatis-plus-boot-starter-version>3.5.14</mybatis-plus-boot-starter-version> <swagger-version>2.2.41</swagger-version> <jackson.version>2.20.0</jackson.version> <io.micrometer.version>1.6.3</io.micrometer.version> <xxl-job.version>2.2.0</xxl-job.version> <kubernetes-client.version>5.12.2</kubernetes-client.version> <kubernetes-model-common.version>5.12.2</kubernetes-model-common.version> <!-- <kubernetes.client-java-spring-integration.version>12.0.0</kubernetes.client-java-spring-integration.version>--> <kubernetes.client-java-spring-integration.version>13.0.2</kubernetes.client-java-spring-integration.version> <caffeine.version>2.9.3</caffeine.version> <commons-text.version>1.10.0</commons-text.version> <jedis.version>3.3.0</jedis.version> <!-- Plugins version --> <spring-boot-maven-plugin.version>3.5.5</spring-boot-maven-plugin.version> <maven-compiler-plugin.version>3.6.0</maven-compiler-plugin.version> <maven-clean-plugin.version>3.1.0</maven-clean-plugin.version> <maven-assembly-plugin.version>3.3.0</maven-assembly-plugin.version> <maven-resources-plugin.version>3.0.2</maven-resources-plugin.version> <maven-surefire-plugin.version>2.22.1</maven-surefire-plugin.version> <maven-install-plugin.version>2.5.2</maven-install-plugin.version> <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version> <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version> <dockerfile-maven-plugin.version>1.4.13</dockerfile-maven-plugin.version> <maven-jaxb2-plugin.version>0.11.0</maven-jaxb2-plugin.version> <easyexcel.version>2.2.6</easyexcel.version> <commons-validator.version>1.7</commons-validator.version> <spring-boot-starter-freemarker.version>2.6.4</spring-boot-starter-freemarker.version> <elasticsearch.version>8.11.0</elasticsearch.version> <mybatis-spring.version>3.0.5</mybatis-spring.version> </properties> <!-- 公共依赖 版本管理--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring.boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>${spring-cloud-alibaba-dependencies.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud-dependencies.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> <version>4.3.0</version> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>

Read more

Java常见面试题及答案汇总(2025最新版)

一、Java基础语法与核心特性 1. Java的核心特性有哪些? 答案: * 跨平台性(Write Once, Run Anywhere):通过JVM(Java虚拟机)实现,字节码文件可在任意支持JVM的操作系统运行; * 面向对象(OOP):封装、继承、多态三大核心特性; * 安全性:支持沙箱机制、字节码校验、权限控制(如文件IO权限); * 健壮性:自动垃圾回收(GC)避免内存泄漏,强类型检查、异常处理机制减少运行时错误; * 分布式:支持RMI(远程方法调用)、HTTP协议,便于开发分布式应用; * 多线程:内置多线程API,支持并发编程。 2. 基本数据类型与包装类的区别? 答案: 维度基本数据类型(如int、float)包装类(如Integer、Float)本质原始值,无对象属性引用类型,继承Object类默认值有(

By Ne0inhk
Flutter 三方库 js_wrapping 的鸿蒙化适配指南 - 实现 Dart 与 JavaScript 的无缝对象包装、支持强类型回调与属性映射

Flutter 三方库 js_wrapping 的鸿蒙化适配指南 - 实现 Dart 与 JavaScript 的无缝对象包装、支持强类型回调与属性映射

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 js_wrapping 的鸿蒙化适配指南 - 实现 Dart 与 JavaScript 的无缝对象包装、支持强类型回调与属性映射 前言 在进行 Flutter for OpenHarmony 的 Web 混合开发时,频繁地在 Dart 层与底层 JavaScript 环境进行数据交互是不可避免的。虽然官方提供了基本的 dart:js,但在处理复杂的 JS 对象和回调时,代码往往会变得杂乱无章。js_wrapping 提供了一个更优雅的、类型安全的包装层。本文将指导大家如何在鸿蒙端利用该库提升 JS 互操作的开发体验。 一、原理解析 / 概念介绍 1.1 基础原理

By Ne0inhk

[AI提效-20]-豆包实操指南:高效完成学术论文的搜索与解读(新手也能上手)

学术研究、论文写作中,我们常陷入两大困境:一是找不到精准匹配的权威论文,翻遍知网、万方却被无关文献淹没,浪费大量时间;二是读懂论文难,尤其是英文文献、专业度高的实证论文,面对复杂的研究方法、晦涩的理论表述,半天抓不住核心要点,更无法高效复用其中的研究思路和成果。 其实,借助豆包的AI能力(学术搜索、多模态解读、逻辑梳理、翻译辅助等),就能轻松解决这两大痛点——不用手动筛选文献、不用逐字啃晦涩表述,新手也能在1-2小时内,完成“精准搜论文→快速读论文→吃透核心要点”的全流程,适配本科、硕士论文写作、课题研究等各类学术场景。 本文将手把手教你,如何使用豆包进行学术论文的搜索与解读,从搜索入口定位、精准指令搭建,到论文拆解、要点提炼,每一步都附具体操作和指令模板,直接套用就能提升学术效率,避免无效内耗。 一、先搞懂核心:豆包在学术论文场景的核心优势 很多人只用豆包聊天、问基础问题,却忽略了它的学术赋能能力——相较于传统文献检索工具(知网、万方)

By Ne0inhk