Java是编程语言,但java,java EE,servlet,JDK之间有什么区别?
我知道Java EE是建立在Java SE之上的,但它实际上是一个平台,框架还是什么? Servlet技术用于创建Web应用程序,但它是一个平台,编程语言,框架还是什么?
Java语言用于Android应用程序开发,但我们在哪里使用Java ME?
由于
答案 0 :(得分:1)
Java是虚拟机规范以及它的特定语言。自1995年以来,其他几种语言已被移植到JVM上运行:JavaScript,Jython,Closure,JRuby和Scala。
Java EE是另一个1999 规范,适用于在操作系统无关的应用程序服务器中运行的分布式对象,该服务器管理对象生命周期,事务等。实现的Java EE应用程序服务器规范包括JBOSS,WebLogic,Glassfish和WebSphere。
Servlet是HTTP侦听器 - Java类。他们不平台,框架或规范。它们是Java EE规范的一部分。
JDK是Java开发工具包。它包含Java的所有开发工具:编译(javac),打包(jar)等。
Java ME先于Android和iPhone。它适用于移动平台,但我认为它几乎没有IOS和Android所做的市场或思想共享。 Sun推出的每个提案都不是赢家(例如Jini,JXTA,Java ME等)
您应该了解Java EE的一些替代方案。 vert.x是一个非阻塞的IO平台,值得大家关注。它建立在Netty上。我认为这两个都是平台。它们都不是Java EE 规范的一部分。
另一个是Spring,它是一个框架。框架以好莱坞原则运作:“不要打电话给我们;我们会打电话给你。”您将代码嵌入框架,而不是相反。
Rod Johnson在2001年开发了Interface 21 / Spring,作为对重型EJB 1.0规范的反应。它嵌入在Spring Boot中,这是一种可部署的JAR打包方案。