如何搭建一个购物网站徐州网站外包

张小明 2026/1/1 17:30:24
如何搭建一个购物网站,徐州网站外包,wordpress 怎么使用,传奇手游盒子app平台排行榜Spring Boot 项目从 JDK 8 升级到 JDK 21#xff08;长期支持版 LTS#xff09;#xff0c;会面临哪些问题。 主要就是API变更、框架适配、第三方依赖、构建工具配置 问题。springboot项目从1.8到21面临的问题一、JDK API 变更导致的问题JDK 8 到 21 有大量 API 废弃、移除或…Spring Boot 项目从 JDK 8 升级到 JDK 21长期支持版 LTS会面临哪些问题。 主要就是API变更、框架适配、第三方依赖、构建工具配置问题。springboot项目从1.8到21面临的问题一、JDK API 变更导致的问题JDK 8 到 21 有大量 API 废弃、移除或行为变更核心影响点1. 已移除的 APIsun.misc.BASE64Encoder/DecoderJDK 8 中已标记废弃JDK 16 移除需替换为java.util.Base64Thread.stop()、Thread.suspend()JDK 11 严格限制调用会抛 UnsupportedOperationExceptioncom.sun.image.codec.jpeg.JPEGCodecJDK 9 移除需替换为ImageIOjava.security.acl包JDK 17 标记为废弃JDK 21 中部分类移除需改用java.security.Policy。2. 模块化限制JPMSJDK 9 引入模块系统默认不允许访问sun.*、com.sun.*等内部 API问题表现运行时抛IllegalAccessError或ModuleNotFoundException解决方案替换内部 API 为标准 API如sun.misc.Unsafe替换为VarHandle若必须使用需在启动参数中添加--add-exports如--add-exports java.base/sun.miscALL-UNNAMED。3. 日期时间 API可选JDK 8 的Date/Calendar未移除但 JDK 1.8 引入的java.timeJSR 310在 21 中更完善若项目仍用旧 API需注意SimpleDateFormat的线程安全问题未解决但 JDK 21 无变更推荐逐步替换为LocalDateTime、ZonedDateTime等。4. 字符串与集合 API 变更String.trim()JDK 11 行为不变但String.strip()去除 Unicode 空白成为推荐替代Collections.singletonMap()JDK 9 新增Map.of()、List.of()等不可变集合工厂方法旧代码兼容但需注意不可变集合的特性不支持修改。二、Maven版本兼容JDK 21 对构建工具版本有最低要求旧版本构建工具无法识别 JDK 21 的编译参数Maven需升级到 3.8.0推荐 3.8.5且maven-compiler-plugin需升级到 3.10.0否则无法编译 JDK 21 代码。pom.xml plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-compiler-plugin/artifactId version3.13.0/version configuration release21/release!-- 统一使用release参数 -- /configuration /plugin三、Spring Boot 框架本身和中间件版本1. Spring Boot 版本必须升级JDK 21 仅支持Spring Boot 3.1官方明确Spring Boot 3.0 支持 JDK 173.1 开始支持 JDK 21若项目当前是 Spring Boot 2.x仅支持 JDK 8-17需先升级到 Spring Boot 3.x这会带来连锁变更Spring Boot 3.x 核心变更基于 Spring Framework 6.x要求 Java 17JDK 21 兼容移除对javax.*包的支持全面迁移到jakarta.*如jakarta.servlet替代javax.servletjakarta.persistence替代javax.persistence自动配置类、starter 依赖有调整如spring-boot-starter-web底层依赖 Tomcat 10而 Tomcat 10 也基于 Jakarta EE 9。内嵌容器Tomcat 9JDK 8→ Tomcat 10JDK 17Tomcat 10 的 Servlet API 从javax.servlet迁移到jakarta.servlet若项目中有自定义 Servlet/Filter/Listener需修改包名日志框架Spring Boot 3.x 默认使用 Logback 1.4Logback 1.4 要求 JDK 11需确认日志配置文件如logback.xml是否适配缓存、事务等注解Transactional、Cacheable等注解底层依赖的 API 无大变更但需确认 Spring Framework 6.x 的行为变更如事务传播机制、缓存管理器适配。2、第三方依赖兼容问题这是升级中最常见的 “坑”大量第三方库在 JDK 21 下无法运行1. 数据库驱动MySQL 驱动mysql-connector-java 8.0.28 才支持 JDK 17需升级到 8.0.30适配 JDK 21Oracle 驱动ojdbc8 仅支持 JDK 8-11需升级到 ojdbc11支持 JDK 11-21PostgreSQL 驱动42.2.x 仅支持 JDK 8需升级到 42.5支持 JDK 17。2. 中间件客户端Redisjedis 3.7.x 仅支持 JDK 8需升级到 4.0支持 JDK 11Kafkakafka-clients 2.8.x 支持 JDK 83.0 支持 JDK 11需升级到 3.4适配 JDK 21Elasticsearch7.17.x 支持 JDK 8-178.x 支持 JDK 17需升级客户端到 8.x适配 JDK 21。3. 其他常用库MyBatis3.5.9 支持 JDK 17需升级旧版本 3.5.6 以下在 JDK 21 中会抛类加载异常FastJSON1.2.83 以下存在 JDK 17 兼容问题需升级到 2.0FastJSON2Apache Commonscommons-lang3需升级到 3.12.0commons-collections4需升级到 4.4Lombok1.18.20 以下不支持 JDK 16需升级到 1.18.30适配 JDK 21且需在 Maven 中配置lombok.version为最新版。四、运行时与启动参数问题1. JVM 参数变更JDK 8 的-XX:UseConcMarkSweepGCCMS 垃圾收集器在 JDK 14 中废弃JDK 21 中移除需替换为-XX:UseG1GC默认或-XX:UseZGCJDK 15 正式支持低延迟-XX:UseParallelGC仍可用但推荐适配新 GCJDK 11 移除-XX:UseCGroupMemoryLimitForHeap需改用-XX:UseContainerSupport默认开启。2. 模块化启动参数若项目未适配模块化需添加启动参数避免模块冲突css java --add-modules ALL-MODULE-PATH \ --add-exports java.base/sun.miscALL-UNNAMED \ -jar your-app.jar总结主要的风险点spring boot 需要升级到Spring Boot 3.1大版的升级就涉及到很多中间件需要跟着升级其次就是一些API可能被移除了这块编译就阶段就能解决。还有就是我们maven版本和编译插件需要升级。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

阿里云多网站怎么编程一个网站

小米音乐Docker镜像的5个高效运维技巧:从部署到优化 【免费下载链接】xiaomusic 使用小爱同学播放音乐,音乐使用 yt-dlp 下载。 项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic 小米音乐Docker镜像为音乐爱好者提供了一键部署的便…

张小明 2025/12/30 8:34:46 网站建设

招聘网站开发学徒广告门网站

第一章:Open-AutoGLM的核心能力与技术背景Open-AutoGLM 是一个面向自动化自然语言处理任务的开源大语言模型框架,融合了生成式语言建模与任务自适应推理能力。其核心设计目标是实现零样本或少样本条件下的高效任务理解与执行,适用于文本生成、…

张小明 2025/12/30 8:35:36 网站建设

店面装修优化大师官方免费下载

传统论文写作耗时数周甚至数月,如今借助AI工具,研究者能实现效率的跃迁。本文将严谨拆解“好写作AI”如何贯穿论文全周期,实现从选题到完稿的效率质变。好写作AI官方网址:https://www.haoxiezuo.cn/1. 选题与开题:从“…

张小明 2026/1/1 3:06:31 网站建设

丹江口网站建设网站功能说明怎么做

第一章:Open-AutoGLM 新应用适配开发流程在构建基于 Open-AutoGLM 框架的新应用时,开发者需遵循一套标准化的适配流程,以确保模型能力与业务场景高效融合。该流程强调模块化集成、配置驱动和可扩展性设计,适用于多种自然语言处理任…

张小明 2025/12/31 10:11:17 网站建设

公司做网站之前要准备什么软件sae wordpress 主题

今天开始咱们的系统服务调用系列分享。系统服务是鸿蒙应用与底层系统交互的核心通道,而通知服务(NotificationCenter)更是高频刚需 —— 无论是消息推送、事件提醒还是功能跳转,都离不开它。这篇咱们聚焦 NotificationCenter 的核…

张小明 2025/12/30 10:08:19 网站建设

网页设计的网网页设计的网站住宅和城乡建设部网站

Kotaemon智能体框架支持C和Go语言插件开发?技术细节揭秘 在企业智能化转型加速的今天,构建一个既能理解复杂业务逻辑、又能稳定运行于高并发环境的对话系统,已成为AI工程落地的核心挑战。传统聊天机器人往往困于“问答即检索”的简单范式&am…

张小明 2025/12/30 10:09:05 网站建设