Java SE v Java EE v Java FX - laek/javacakes-raspberry GitHub Wiki
Java is a technology which is both a programming language and a platform.
Programming language helps us in building our logic with specific syntax and style on the other hand platform provides an environment to compile/execute code that we have wrote.
Java programming is same for both SE and EE but they differ by the platforms provide. Java has got 4 platforms in total and they are listed below
Java Language Platforms
Java Platform Standard Edition (Java SE) Java Platform Enterprise Edition(Java EE) Java Platform Micro Edition(Java ME) JavaFX Each platform is provided with a Java Virtual Machine(JVM) and Application Programming Interface(API).JVM is a software for a particular hardware and software that run java application. An API is a collection of software components that are used to create other software components or applications. Each Java platform provides a JVM and an API by allowing applications written on that system to run on any other compatible system.
Java SE : Provides core functionality of Java programming language, it consists from basic types to high-level classes which are used for networking, security ,graphical user interface and many more.
Java EE : Built on top of SE which main goal is to provide solutions for large scale applications that run in a Enterprise.
Java ME : Is a subset of Java SE along with special class libraries useful for small device applications especially mobile and electronic gadgets
JavaFX : Is a platform to create rich internet applications with light weight API. JavaFX uses hardware accelerated graphics and media engines to take advantage of high performance client and modern look and feel
Java EE (Java Enterprise Edition) and Java SE (Java Standard Edition) are both Java platform editions. But Java EE is an extension for Java SE (a plain Java version).
Main differences between Java EE and Java SE:
Java EE is used to develop enterprise apps, while Java SE – portable desktop apps. Java SE includes Java APIs for Java Class Library. Java EE – several APIs connected with JMS, RMI, XML. Due to XU (execution unit), Java EE requires less memory. Java SE has no XU. Transaction support. Java EE – support. Java SE – no support (the implementation of particular transaction management logic is required). Clustering support. Java EE – support. Java SE – no support. SSP. Java EE – support. Java SE – no support. Execution statistics. In Java EE – provided. In Java SE – not provided. JMS (Java Messaging Support). Java EE – provided. Java SE – not provided. Security features. Java EE provides declarative and programmatic security. Java SE – built-in cryptography, authorization, authentication. Implementations. Java EE – GlassFish, JBoss, TomEE, JEUS, WebOTX. Java SE – JDK (Java Development Kit) of Oracle Corporation. The application on Java EE can be characterized with a high level of scalability and reliability. Besides that, they provide a secure network. Java SE API is not suitable for developing multi-tires and large-scale apps.