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
相关推荐
NE_STOP3 小时前
shiro_实现分布式会话SessionManager、限制密码重试次数和并发登录控制
java
Seven973 小时前
剑指offer-63、数据流中的中位数
java
毕设源码-钟学长3 小时前
【开题答辩全过程】以 基于Spring Boot的社区养老服务管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
mjhcsp4 小时前
C++ Manacher 算法:原理、实现与应用全解析
java·c++·算法·manacher 算法
Coder_Boy_4 小时前
基于SpringAI的在线考试系统-企业级软件研发工程应用规范案例
java·运维·spring boot·软件工程·devops
indexsunny4 小时前
互联网大厂Java面试实战:微服务、Spring Boot与Kafka在电商场景中的应用
java·spring boot·微服务·面试·kafka·电商
SUDO-14 小时前
Spring Boot + Vue 2 的企业级 SaaS 多租户招聘管理系统
java·spring boot·求职招聘·sass
sheji34164 小时前
【开题答辩全过程】以 基于spring boot的停车管理系统为例,包含答辩的问题和答案
java·spring boot·后端
重生之后端学习4 小时前
21. 合并两个有序链表
java·算法·leetcode·链表·职场和发展
南屿欣风4 小时前
Sentinel 熔断规则 - 异常比例(order & product 示例)笔记
java·开发语言