The Java EE platform consists of a suite of services, application interfaces (APIs), and protocols that provide functional support for the development of Web-based multi-tier applications, with a simple description of the 13 technical specifications in the Java EE (Space-constrained, simple description only):
1.JDBC (Java Database Connectivity): The JDBC API provides a unified way to access different databases, like ODBC, where JDBC has shielded developers from some of the details, and JDCB access to the database is platform agnostic.
2.JNDI (Java name and directory Interface): The JNDI API is used to perform name and directory services. It provides a consistent model for accessing and manipulating enterprise-class resources such as DNS and LDAP, local file systems, or application server objects.
3.EJB (Enterprise JavaBean): One of the reasons why EE technology has won a lot of attention is EJB. They provide a framework for developing and implementing distributed business logic, which significantly simplifies the development of scalable and highly complex enterprise-class applications. The EJB specification defines when EJB components interact with their containers. Containers are responsible for providing common services, such as directory services, transaction management, security, resource pooling, and fault tolerance. But it's worth noting that EJB is not the only way to implement Java EE. It is because of the openness of the Java EE that some vendors can achieve the same goal in a parallel way with EJBS.
4.RMI (Remote method Invoke): As its name indicates, the RMI protocol invokes a method on a remote object. It uses serialization to pass data on the client and server side. RMI is a lower-level protocol that is used by EJBS.
5.Java Idl/corba: With the support of Java IDL, developers can integrate Java with CORBA. They can create Java objects and make them expandable in the CORBA orb, or they can create Java classes and serve as clients for CORBA objects that are expanded with other orbs. The latter approach provides another way through which Java can be used to integrate your new application with the old system.
6.JSP (Java Server pages): JSP pages consist of HTML code and embedded Java code. The server processes the Java code after the page is requested by the client, and then returns the resulting HTML page to the client's browser.
7.Java Servlet:servlet is a small Java program that extends the functionality of the Web server. As a server-side application, it starts executing when requested, and is similar to CGI perl scripts. Servlets provide much more functionality than JSPs, but they are implemented in different ways. JSPs are usually embedded in a small amount of Java code in most HTML code, and Servlets are all written in Java and generate HTML.
8.XML (extensible Markup Language): XML is a language that can be used to define other markup languages. It is used to share data in different business processes. The development of XML and Java are independent of each other, but it and Java have the same goal is platform independence. By combining Java and XML, you can get a perfect platform-independent solution.
9.JMS (Java Message Service): MS is an application interface (API) for communicating with each other for message-oriented middleware. It supports both point-to-point domains, domains that support publish/subscribe (Publish/subscribe) types, and provides support for the following types of messages: Approved messaging, transactional message delivery, consistent messaging, and persistent subscriber support. JMS also provides another way to integrate your application with the old backend system.
10.JTA (Java Transaction Architecture): JTA defines a standard API that enables applications to access various transaction monitoring.
11.JTS (Java Transaction Service): JTS is the basic implementation of CORBA OTS transaction monitoring. The JTS specifies how the transaction manager is implemented. The transaction manager is a Java image that supports the Java Transaction API (JTA) specification at the top level and implements the OMG OTS specification in the lower layer. The JTS transaction Manager provides transactional services for application servers, resource managers, stand-alone applications, and communication Explorer.
12.javamail:javamail is an API for accessing mail servers, which provides an abstract class of mail servers. Supports not only SMTP servers, but also IMAP servers.
13.JAF (JavaBeans Activation Framework): JavaMail uses JAF to process MIME-encoded message attachments. The MIME byte stream can be converted to a Java object or converted from a Java object. Most applications do not need to use JAF directly.
13 Technologies of JAVA EE