Java EE改Jakarta

昨天折腾了一天,把旧项目升级了

旧项目运行环境

jdk :jdk1.7

TomCat:TomCat8.0 或者 TomCat 8.5

Eclipse 2022-12

spring:spring-2.5.6.jar

Hibernate:hibernate-3.2.6.ga.jar

Struts:struts2-core-2.1.6.jar

升级后运行环境

jdk :jdk1.8

TomCat:TomCat9.0 TomCat的jdk也是1.8

Eclipse 2022-12

spring:Spring4.3.13

Hibernate:hibernate-core-4.1.12.Final.jar

Struts:struts2.5.32

由于jdk1.8还是Java EE项目,还不是很满足,今天决定继续折腾,把项目升级为Jakarta试试。

整个项目已经备份了,不怕坏。

【Jakarta的由来】

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。它分为三个版本:

Java SE(J2SE):标准版。基础中的基础,后面2个版本都依赖于它。当前最新版本是Java 17(LTS版本,将于2021年9月发布)

Java EE(J2EE):企业版。用于企业级大型应用开发,包含了Web、Security、Management等几十种标准技术

Java ME(J2ME):移动版。随着Android/iOS的流行,它已几乎销声匿迹

Oracle将 Java EE (Java SE还自己保留)交给开源组织,Eclipse基金会接手。但Oracle不允许开源组织使用Java名号,所以Jakarta EE名称于2018.02.26应运而生

由于我电脑本身就安装了jdk17,所有直接换jdk17了

更换后源代码会出现很多红色标线

【处理问题1】
import javax.annotation.Resource; 很多类文件的这句标红

Java为我们提供了 javax.annotation.Resource这个注解。

spring框架提供了org.springframework.beans.factory.annotation.Autowired。

一般情况下我们使用 javax.annotation.Resource这个注解,因为这样我们就能实现和spring框架的解藕。

原文链接:https://blog.csdn.net/weixin_39797780/article/details/114972302

这时意识到一个问题

【jdk 和 java ee 和 jakarta ee 到底有什么区别啊】

Java EE是Java企业版,是面向企业级应用开发而设计的Java平台。

JDK则是Java开发工具包,包含了开发和运行Java程序所需的所有组件。

Java EE和JDK之间有许多共同点。Java EE是建立在JDK之上的,也就是说,Java EE中使用的所有Java API都位于JDK中。既然Java EE是基于JDK的,那么JDK的版本肯定会影响Java EE的应用开发。

另外,Java EE中的一些新特性只能在较新的JDK版本中使用。比如,Java EE 7中引入了Lambdas表达式,这是在JDK 8中才被引入的新语言特性。因此,在使用Java EE 7时,必须使用JDK 8或更高版本。

jdk,jre,jvm的区别可见https://blog.csdn.net/Martin_chen2/article/details/112905578

【搞清关系后,我需要下载一个Jakarta ee】

百度找到Jakarta的官网 https://jakarta.ee/zh/

打开后在右上角有这两个按钮

其中starter按钮是 提供helloworld的,也就是【初体验】,可以根据版本号,jdk版本定制hello world;

另一个Download是下载【兼容产品】,点进去看了,全是服务器的,也就是兼容服务器;

愣是找了半天,没找到Jakarta的下载地址,最后在这篇文章找到

参考https://blog.csdn.net/m0_57151612/article/details/123689516

原来是藏在规范里面,我一直以为规范就是代码规范文档,随意没点。

以下是Jakarta的很多个规范,看你需要用到什么功能就下载对应的jar包。


研究了好久,找到这篇文章

https://blog.csdn.net/xiaofanku/article/details/112618281

升级jakarta并不是简单的把java ee替换成jakarta;还要看以下两点条件

1、服务器是否支持jakarta

目前有多个服务器已适配jakarta,tomcat 10支持jakarta;所以服务器没啥问题;

2、框架类是否支持jakarta

复制代码
头晕,不搞了,恢复用java ee
相关推荐
愚公移码1 分钟前
蓝凌EKP18产品:流程引擎技术篇之流程核心概念模型
java·人工智能·流程引擎·蓝凌
Full Stack Developme8 分钟前
Apache Tika 教程
java·开发语言·python·apache
鹅城剑仙22 分钟前
Java线程池完全指南
java
李白的天不白24 分钟前
SmartAdmin(基于 Spring Boot 框架)中配置跨域请求 VUE3 设置请求头
java·前端
橙子进阶之路26 分钟前
Java线程(CompletableFuture)
java·开发语言
鹅城剑仙34 分钟前
Java CompletableFuture 异步编程完全指南
java
2601_9618752437 分钟前
法考备考计划表|学习计划|资料已整理
java·开发语言·学习·eclipse·tomcat·c#·hibernate
重生之我是Java开发战士1 小时前
【Java SE】多线程(三):单例模式,阻塞队列,线程池与定时器
java·javascript·单例模式
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第115题】【并发篇】第15题:说一下悲观锁和乐观锁的区别?
java·开发语言·面试
心之伊始1 小时前
Spring Boot Actuator + Micrometer 实战:自定义业务指标并接入 Prometheus 观测接口耗时
java·spring boot·prometheus·actuator·micrometer