Java中的JDK,JRE和JVM有什么区别和联系

小编 844

Java中的JDK,JRE和JVM有本质的区别:JDK是Java标准开发包,它提供了编译、运行Java程序所需的各种工具和资源;JRE是Java运行环境,用于运行Java程序;JVM是Java虚拟机,负责解释执行字节码文件。三者的主要联系:JDk包含JRE,JRE中包含JVM。

1.JDK,JRE和JVM的区别

(1)本质和概念区别

JDK是Java Development Kit的缩写,是Java的开发工具包,它提供了编译、运行Java程序所需的各种工具和资源。

JRE是Java Runtime Environment的缩写,是Java运行环境,包含JVM标准实现及Java核心类库。

JVM是Java Virtual Mechinal的缩写,即Java虚拟机,它是整个java实现跨平台的最核心的部分。JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。

(2)作用和使用上的区别

JDK用于开发,程序开发者必须安装JDK来编译、调试程序;

JRE用于运行Java程序,它没有包含任何开发工具,如编译器和调试器等,因此普通用户只需要安装JRE来运行Java程序。

JVM负责解释执行字节码文件,是可运行java字节码文件的虚拟计算机。当使用Java编译器编译Java程序时,生成的是与平台无关的字节码,这些字节码只面向JVM。不同平台的JVM都是不同的,但它们都提供了相同的接口。

2.JDK,JRE和JVM的联系

简单来讲,JDK包含了JRE,JRE包含了JVM。JDK是整个Java的核心,包括了Java运行环境JRE、Java工具和Java基础类库。JRE是运行JAVA程序所必须的环境的集合,包含JVM标准实现及Java核心类库。JVM是整个java实现跨平台的最核心的部分,能够运行以Java语言写的程序。

延伸阅读

Java中SSH框架和SSM框架有什么区别

Java中SSH框架和SSM框架主要有两点区别:1.MVC分离的实现方式不同;2.持久层的框架不同。SSH框架中,MVC分离的实现方式为Struts,SSM框架为SpringMVC;SSH持久层的框架前者为Hibernate,而SSM为MyBatis。

1.SSH框架

一般常说的SSH组合框架,就是Struts,Spring,Hibernate,后来Struts被SpringMVC来取代,所以SSH也可以是后者的组合。在这4中框架中,Struts和Hibernate目前来看,已经比较陈旧,而且也是比较重的框架,企业中目前已经很少用了。

在10多年前,SSH绝对是业内最流行的企业级开发框架。SSH框架是以Struts框架进行MVC分离、控制业务跳转,同时使用Hibernate进行持久化,最后配合Spring的统一管理进行实现的开发框架。相对于传统的J2EE开发框架来讲性能相对较高、资源消耗相对较少。

SSH框架具体优势如下:框架进行了代码分层,将Java代码和HTML代码进行分层,大大降低了开发人员的技术难度,不需要同时精通Java后端知识和Web前端知识。由于使用了Struts框架进行了MVC分离,降低了各层代码间的耦合度。与Spring的AOP机制相互独立,互不影响。使用SSH框架开发项目,能够大大提高项目的开发效率与开发质量。良好的扩展性和维护性。

2.SSM框架

SSM框架也被称为“SSM组合”,是由Spring+SpringMVC+MyBatis三个框架整合而成的。其实,SpringMVC属于Spring框架,所以SSM框架其实就是Spring和Mybatis两个框架的整合运用。因此,SSM框架可以说是Mybatis的进阶版——Mybatis-plus。这个组合可以说是目前比较流行的组合了,一二线城市中,不少的项目还在使用SSM框架。

那SSM框架的优势又有哪一些呢?对于MVC模式的实现,SpringMvc更加的轻量。由于SpringMvc本身属于Spring,因此与Spring的配合使用契合度更高。Mybatis相对Hibernate更加轻量,同时将Sql和业务代码进行了很好的解耦。MyBatis的学习门槛更低,相对于传统的JDBC差距不大,更好入门及掌握。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部