不用介绍历史,也不用介绍概念,这些地球人都知道的就不要说了。
求高手回答下列问题:
Oracle官网上的jdk-7u71-windows-i586.exe(java se)、java_ee_sdk-6-windows.exe(java ee)和oracle-jmesdk-8-0-rr-win32-bin.exe(java me),忽略版本号(1.6,1.7,1.8)的不同,这三个安装包都包含什么内容?彼此有没有依赖关系?例如安装java_ee_sdk-6-windows.exe(java ee)之前是否必须先安装jdk-7u71-windows-i586.exe(java se)等?
通常java ee开发包含Web类(JDBC+Servlet+JSP)、框架类(Struts、Spring、Hibernate)以及EJB+Web service+JMS、Tomcat之类的内容。那么问题来了,既然这些都是java ee开发的概念或者领域,那为什么只需要安装jdk-7u71-windows-i586.exe(java se)就可以了呢?为什么从来没有听说过要安装java_ee_sdk-6-windows.exe(java ee)的?java ee开发都不使用java_ee_sdk-6-windows.exe(java ee),那它还有什么存在的意义吗?
感谢你的回答,但是还是有以下问题不明,求指教
我安装过EE的版本java_ee_sdk-6-windows.exe(java ee),发现其中有glassfish,javadb以及mq之类的内容,你说的“ee包含se的内容”指的是什么?是不是我说的安装ee之前必须先要安装se,即ee版本要使用se版本的基本功能才能工作?
你没发现下载的javaee 包比 se的大么,就说明里面已经包含se了,只下载ee即可,而glassfish等是类似tomcat的容器的附加内容,可以不下载。
追问还有您说“web容器包含了java ee运行必须的运行库”,但如果只是使用spring,Hibernate之类的进行开发,而不使用web容器(Tomcat之类的),这样的开发也可以称为java ee开发,而此时为什么还是只需要安装java se的jdk就可以了呢?
另外你说“java se主要用于开发桌面应用”,可是服务器上安装的也是java se的jdk啊,并不是java ee,这个何解?
这么和你说吧,如果你安装的是se,有没有使用其他任何web容器或者相关编译器的话是没有servlet这个web开发关键class类库的,而java ee版本则包含这个库,当然tomcat之类的web容器和j2ee相关的一些编辑器,如myeclipse可能也包含这个库。如果你安装了java se,不放使用记事本等文本编辑器写些web相关代码编译下试试就知道了,不要被web容器和开发工具给你提供的环境迷惑了