Differences Between Java SE/EE/ME
Java has many platforms and editions; most developers who have run Java for a long time don’t know the difference between several platforms and editions and how they are related. This tutorial explains the different editions in detail.
Java SE (Standard Edition)
Java SE is the most widely used Java API by developers. The Java Standard Edition provides the core functionality of the Java programming language.
We can define everything from basic core types and objects to high-level classes for graphical user interface development, XML parsing, database access, networking, and security.
In addition to API, the standard version also has a virtual machine, deployment technologies, development tools, and many tools and libraries commonly used for Java development.
Here are some widely used Java SE APIs:
awt
applet
jdbc
swing
rmi
collections
- JavaFX (Merged to Java SE 8)
- xml binding
- Java 8 Collections of Streaming APIs
- Java 9 HTTP/2 API
- Java 9 Reactive Streams API
Java EE (Enterprise Edition)
Java EE (Enterprise Edition) is quite different from Java SE; it includes libraries that have the functionalities to develop and deploy multi-tier, distributed, and fault-tolerant Java applications based on modular components running on application servers.
If your Java application requires a vast distributed system, developers should use Java EE.
The libraries included in Java EE are Remote Method Invocation (RMI), Database Access (JPA, JDBC), Web Services, Messaging, XML processing, and the API for Enterprise versions of servlets JavaBeans, portlets, and Java server, etc.
Below are Java EE APIs commonly used:
websocket
dependency injection
servlet
batch api
ejb
Java faces
persistence
jms
transaction
Besides Java SE and Java ME platforms, Java also provides Java ME Micro Edition.
Java ME, Micro Edition
Java Micro Edition is used in mobile applications development and embedded systems, for example, set-top boxes. Java ME is the subset of Java Standard Edition with some more additional libraries related to mobile devices.
It provides APIs and Small-footprint VM to run Java programs on small devices like mobile phones. We can say Java ME applications are often the clients of Java Enterprise Editions platform services.
The following are some widely used Java ME APIs:
- Java Micro Edition Web Services
- Wireless Messaging
- Trust and Security Services API
- Mobile XML API
- Location
Most of the developers use the Java SE platform. In the case of large-scale applications, the enterprises are required to use the Java EE platform, and if the application is to be used on a small device like mobile phones, the developers can use Java ME.
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook