Java EE改Jakarta

news2024/11/24 8:41:27

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

旧项目运行环境
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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1057132.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

macbook电脑磁盘满了怎么删东西?

macbook是苹果公司的一款高性能笔记本电脑,受到很多用户的喜爱。但是,如果macbook的磁盘空间不足,可能会导致一些问题,比如无法开机、运行缓慢、应用崩溃等。那么,macbook磁盘满了无法开机怎么办,macbook磁…

CleanMyMac X苹果电脑清理浏览器缓存工具

苹果电脑是一款优秀的电脑产品,但是随着使用时间的增长,苹果电脑也会出现一些问题,比如运行速度变慢、占用空间过大、出现错误提示等,这些问题往往和缓存有关。缓存是一种临时存储数据的方式,可以提高电脑的运行效率和…

c#基础逻辑练习案例

第二章综合练习小游戏 练习内容 向控制台输出“这是学号姓名的C#基础小游戏”。向控制台换行再输出“请输入你的游戏昵称:”。向控制台输入你的游戏昵称,赋给一个字符串变量。向控制台换行再输出“请输入你的性别:”。向控制台输入你的性别…

LeetCode 面试题 08.02. 迷路的机器人

文章目录 一、题目二、C# 题解 一、题目 设想有个机器人坐在一个网格的左上角,网格 r 行 c 列。机器人只能向下或向右移动,但不能走到一些被禁止的网格(有障碍物)。设计一种算法,寻找机器人从左上角移动到右下角的路径…

Office 2021 小型企业版商用办公软件评测:提升工作效率与协作能力的专业利器

作为一名软件评测人员,我将为您带来一篇关于 Office 2021 小型企业版商用办公软件的评测文章。在这篇评测中,我将从实用性、使用场景、优点和缺点等多个方面对该软件进行客观分析,在专业角度为您揭示它的真正实力和潜力。 一、实用性&#xf…

数据结构—归并排序-C语言实现

引言:归并排序跟快速排序一样,都运用到了分治的算法,但是归并排序是一种稳定的算法,同时也具备高效,其时间复杂度为O(N*logN) 算法图解: 然后开始归并: 就是这个思想,拆成最小子问题…

mysql八股

1、请你说说mysql索引,以及它们的好处和坏处 检索效率、存储资源、索引 索引就像指向表行的指针,是一个允许查询操作快速确定哪些行符合WHERE子句中的条件,并检索到这些行的其他列值的数据结构索引主要有普通索引、唯一索引、主键索引、外键…

【系统架构】软件架构的演化和维护

导读:本文整理关于软件架构的演化和维护知识体系。完整和扎实的系统架构知识体系是作为架构设计的理论支撑,基于大量项目实践经验基础上,不断加深理论体系的理解,从而能够创造新解决系统相关问题。 目录 1、软件架构演化和定义 …

SLAM从入门到精通(从amcl到navigation软件栈)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们学习了amcl,但它只是navigation里面的一个package而已。真正的导航还包含很多的内容。举个例子来讨论下,我们假设需…

Java后端模拟面试,题集①

1.Spring bean的生命周期 实例化 Instantiation属性赋值 Populate初始化 Initialization销毁 Destruction 2.Spring AOP的创建在bean的哪个时期进行的 (图片转载自Spring Bean的完整生命周期(带流程图,好记)) 3.MQ如…

JavaSE | 初识Java(七) | 数组 (下)

Java 中提供了 java.util.Arrays 包 , 其中包含了一些操作数组的常用方法 代码实例: import java.util.Arrays int[] arr {1,2,3,4,5,6}; String newArr Arrays.toString(arr); System.out.println(newArr); // 执行结果 [1, 2, 3, 4, 5, 6] 数组拷贝 代码实例…

JIRA 如何在项目之间移动 Issue

需要使用 JIRA 的查找功能。 把需要移动的 Issue 先全部找到,然后选择 Tools 下面的所有 Issues 批量操作页面 在随后的页面中,将会出现批量操作的页面。 在这里,可以对需要进行批量操作的问题,进行全部选择。 然后单击下一步继…

机器视觉工程师如何快速停止内耗,与自己和解

十分情绪化的人,是无法更好的成就自我的。 真正让人疲惫的是,不是工作,不是学习,更不是生活。而是你自己的情绪。 我们每一天去上班,感觉自己像个失败者。看不见自身的光芒,被自己的情绪笼罩,饱…

1.5 计算机网络的类别

思维导图: 1.5.1 计算机网络的定义 我的笔记: #### 精确定义: 计算机网络没有统一的精确定义,但一种较为接近的定义是:计算机网络主要由一些通用的、可编程的硬件互连而成,这些硬件并非专门用来实现某一特…

msvcp100.dll丢失怎样修复,msvcp100.dll丢失问题全面解析

msvcp100.dll是一个动态链接库文件,属于 Microsoft Visual C Redistributable 的一个组件。它包含了 C 运行时库,这些库在运行程序时会被加载到内存中。msvcp100.dll文件的主要作用是为基于 Visual C 编写的程序提供必要的运行时支持。 当您运行一个基于…

zemax场曲/畸变图与网格畸变图

网格畸变是XY两个方向上的几何畸变,是不同视场实际像高与近轴像高的偏差。 垂轴放大率在整个视场范围内不能保持常数 当一个有畸变的光学系统对一个方形的网状物体成像时,若δy>0,则主光线的交点高度y比理想像高y低,视场越大,低得越多&a…

javaWeb宿舍管理系统

一、引言 宿舍管理系统是一种教育管理系统,本系统具有多种优点,其中通用性、智能化、简单操作性等可以极大地提升用户体验,本系统适合于高校以及教育行业公司等进行使用。宿舍管理系统采用Jsp技术作为前端页面技术,主要逻辑技术语…

Multiple CORS header ‘Access-Control-Allow-Origin‘ not allowed

今天在修改天天生鲜超市项目的时候,因为使用了前后端分离模式,前端通过网关统一转发请求到后端服务,但是第一次使用就遇到了问题,比如跨域问题: 但是,其实网关里是有配置跨域的,只是忘了把前端项…

如何解决版本不兼容Jar包冲突问题

如何解决版本不兼容Jar包冲突问题 引言 “老婆”和“妈妈”同时掉进水里,先救谁? 常言道:编码五分钟,解冲突两小时。作为Java开发来说,第一眼见到ClassNotFoundException、 NoSuchMethodException这些异常来说&…

【数据结构】排序(1) ——插入排序 希尔排序

目录 一. 直接插入排序 基本思想 代码实现 时间和空间复杂度 稳定性 二. 希尔排序 基本思想 代码实现 时间和空间复杂度 稳定性 一. 直接插入排序 基本思想 把待排序的记录按其关键码值的大小依次插入到一个已经排好序的有序序列中,直到所有的记录插入完为止&…