【java】J2EE、J2SE和J2ME的区别
本文向大家简单介绍一下J2EE、J2SE、J2ME概念及区别,J2EE,J2SE,J2ME是java针对不同的的使用来提供不同的服务,也就是提供不同类型的类库。
Java2平台包括:标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本
J2SE是Java 2 standard edition是Java2的标准版,主要用于桌面应用软件的编程
J2EE即Java2 enterprise edition是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统
J2ME即Java 2 Micro Edition是Java的微型版,主要应用于嵌入式系统开发,如手机和PDA的编程
Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入/输出、网络编程
Enterprise Edition(企业版) J2EE 包含J2SE 中的类,并且还包含用于开发企业级应用的类。比如:EJB、servlet、JSP、XML、事务控制
Micro Edition(微缩版) J2ME 包含J2SE中一部分类,用于消费类电子产品的软件开发。比如:呼机、智能卡、手机、PDA、机顶盒
笼统的讲,可以这样理解:
J2SE是基础;
压缩一点,再增加一些CLDC等方面的特性就是J2ME;
扩充一点,再增加一些EJB等企业应用方面的特性就是J2EE。
他们的范围是:J2SE包含于J2EE中,J2ME包含了J2SE的核心类,但新添加了一些专有类
对于初学者,都是从J2SE入手的。
J2EE和J2SE的区别:
J2EE是在J2SE的基础上添加了一系列的企业级应用编程接口.J2EE包含有很多的技术!其中有你熟悉的jsp,servlet,jdbc,jme等13中技术!
J2EE主要是用来做B/S结构的应用程序!也就是说是基于浏览器和服务器的!
J2SE给我的感觉只需要一个容器就够了,J2EE支持分布式组件可以同时存在多个容器
1、J2EE到底是什么?
J2EE,是sun公司提出的一个标准,符合这个标准的产品叫“实现”;其中你下载的sun公司的J2EE开发包中就有一个这样的“实现”,而jboss,weblogic,websphere都是J2EE标准的一个“实现”。由于jboss,weblogic,websphere自身带有J2EE的api,所以可以不使用sun的J2EE实现。关于J2EE可以参见J2EE体系架构
2、J2EEsdk和j2sdkee的区别
其实你可以把J2EEsdk和j2sdkee当成是一回事,官方叫法为J2EEsdk。不过如果你仔细推敲,也可以用下面的方法来理解:J2EEsdk就是JDK,这个是开发ejg必须要安装的,j2sdkee是J2EE开发环境(常见的开发环境模式:服务器+数据库+集成开发环境,比如:mysql+tomcat+myeclipse),这也是要安装的,其实如果你安装了jboss的话,就不用全部安装j2sdkee了,只要把其中的一个名为J2EE的文件复制过去就可以了,也就是说JDK是必须要装的,而j2sdkee则不需要,看你用什么做容器了。
3、装过J2EEsdk还需要装J2SEsdk吗?
在sun的网站下载J2EE1.4时,有两种下载包:
◆一种是J2EE1.4sdk完整包(allinone),包含J2EEserver,J2SE,sample,apidoc;J2EE好像包含J2SE几乎所有东西.我看J2EE里也有一个JDK,它下面的lib和J2SE下面的lib一样大(同版本的).但jre不一样大,因为J2EE比J2SE多了好多,如java.servlet.*,java.servlet.http.*等.J2EE是让你用来开发J2EEspecification的东西.如果是用于web服务器,不装J2EE也行,只要装一个jre(连J2SE都不用装),外加一个servlet引擎(如tomcat)就够了.看下面这个,一目了然:
J2SE==JDK==bin+demo+include+jre+lib+src.rar//SUN官方的JDK1.4.2
J2EE==JDK+....//这里的JDK和上面的只有jre文件不一样大,原因上文已说.
◆另一种为单独的J2EEserver,安装前需要先安装J2SEsdk。
不管哪个,安装完成后,都要设置java_home,J2EE_home,classpath环境变量,再运行J2EEserver即可。
为了方便开发者,Sun把Java区分为J2SE(Java2StandardEdition)、 J2EE(Java2EnterpriseEdition)、J2ME(Java2MicroEdition)和JavaCard四种平台。J2SE是所有Java技术的基础,不管开发人员要开发什么平台的Java应用程序,都必须先从J2SE学起。J2EE技术着重于企业服务器端的应用。J2ME主要针对嵌入式系统,包括手机、PDA等。针对手机应用程序的开发,Sun还提供了免费的J2MEWirelessToolkit。JavaCard技术用来开发可以植入IC智能卡中的应用程序。
以上四种平台的软件开发包(SoftwareDevelopmentKit,SDK)都是免费的,可以从Sun的网站下载。当然,只用SDK未免太不讲究,我们需要开发工具来提高开发效率。这样的工具叫做集成开发环境(IntegratedDevelopmentEnvironment,IDE)。以往,BorlandJBuilder和IBMEclipse这两个IDE最受Java程序员的青睐,而Sun自己的IDE却名不见经传。2004年以后,Sun把自己的IDE摆放到重要的位置,努力推进NetBeans和JavaStudio的开发。前者是完全用Java撰写的开放源代码的工具,而后者则是重量级的官方开发工具。Sun的开发工具可谓根正苗红,Java程序员终于可以沐浴Sun(阳光)了!
另:API:
API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
原文链接:解析J2SE,j2EE,j2ME的区别
【java】J2EE、J2SE和J2ME的区别的更多相关文章
- JDK、J2EE、J2SE、J2ME的区别
JDK.J2EE.J2SE.J2ME的区别 你对JDK.J2EE.J2SE.J2ME概念是否了解,这里和大家分享一下JDK.J2EE.J2SE.J2ME的概念以及他们的关系区别,相信本文介绍一定会让你 ...
- [转载]JDK、SDK、J2EE、J2SE、J2ME的区别
[转载]JDK.SDK.J2EE.J2SE.J2ME的区别 来源: https://www.cnblogs.com/liangyihui/p/5905875.html Java的名词真的是多啊 JDK ...
- Java2_J2EE、J2SE和J2ME的区别
解析J2EE.J2SE.J2ME.JDK的区别 本文向大家简单介绍一下JDK.J2EE.J2SE.J2ME概念及区别,J2EE,J2SE,J2ME是java针对不同的的使用来提供不同的服务 ...
- Java知多少(4)J2SE、J2EE、J2ME的区别
原文:Java知多少(4)J2SE.J2EE.J2ME的区别 1998年12月,SUN公司发布了Java 1.2,开始使用“Java 2” 这一名称,目前我们已经很少使用1.2之前的版本,所以通常所说 ...
- J2EE,J2SE,J2ME,JDK,SDK,JRE,JVM区别
转自:http://www.metsky.com/archives/547.html 一.J2EE.J2SE.J2ME区别 J2EE——全称Java 2 Enterprise Edition,是Jav ...
- J2SE J2EE J2ME的区别
J2SE J2EE J2ME的区别 J2SE J2EE J2ME的区别多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不 ...
- jdk,j2ee,j2se,j2me的概念区别
jdk,j2ee,j2se,j2me的概念区别1.JDK是Java development toolkit,相当于是Java的库函数,是编译,运行java程序的工具包.J2EE是Java 2 ente ...
- J2EE,J2SE,J2ME,JDK,SDK,JRE,JVM区别(转载)
转载地址:http://blog.csdn.net/alspwx/article/details/20799017 一.J2EE.J2SE.J2ME区别 J2EE——全称Java 2 Enterpri ...
- 转载 j2ee j2se j2me 区别,mvc 和ssh联系理解
[转]J2SE J2EE J2ME的区别 以及 MVC与SSH对应关系 2014-3-6阅读322 评论0 J2SE J2EE J2ME的区别多数编程语言都有预选编译好的类库以支持各种特定的功能,在J ...
随机推荐
- jquery面试(2)
DOM操作——怎样添加.移除.移动.复制.创建和查找节点? (1)创建新节点 createDocumentFragment() //创建一个DOM片段 createElement() //创建一个具体 ...
- Nestjs 身份验证
文档 yarn add @nestjs/passport passport passport-http-bearer @nestjs/jwt passport-jwt auth.service.ts ...
- 15 VScode 使用相关
1.生成html头文件 ①:按下!键 ②:连按两下tab键 即可
- Spring-Boot数据库密码加密配置
springboot集成mysql/oracle时需要在yml/properties中配置数据库信息,用户名密码是肯定有的,所以就涉及到密码的加密,当然不加密也是可以的,正如某位大佬所说的,不加密就像 ...
- js中级小知识4
1.针对表单 form input select textarea type="radio/checkbox/passdord/button/submit/reset/ ...
- Javascript htmldecode
// HtmlDecode http://lab.msdn.microsoft.com/annotations/htmldecode.js // client side version of the ...
- python语法_变量及命名规则
变量:存储信息的,日后被调用,修改操作 常量:固定不变的量,字母大写 变量命名规则: 1 有字母,数字以及下划线等符号组成 2 区分大小写 3 不能使用数字开头,不能含有特殊字符和空格 4 不能使用 ...
- git使用记录_备忘
---恢复内容开始--- 一.将本地的文件上传到git 1.cd 本地文件目录 2.git init git init 命令使git命令可以管理当前的目录 3.git remote add origi ...
- C++的一些知识
1.C++中非虚函数都是静态绑定,虚函数是动态绑定.指针或引用访问对象的虚函数时才能进行动态绑定. 静态多态性:编译时确定操作的对象.如:函数重载,运算符重载. 动态多态性:运行时确定操作的对象. 绑 ...
- caffe报错:cudnn.hpp:86] Check failed: status == CUDNN_STATUS_SUCCESS (3 vs. 0) CUDNN_STATUS_BAD_PARAM 原因
在实际项目中出现的该问题,起初以为是cudnn版本的问题,后来才定位到在网络进行reshape操作的时候 input_layer->Reshape({(), input_layer->sh ...