Java is a platform-independent object-oriented programming language. The key benefits of Java are ‘Write Once And Run Anywhere’, highly configurable and extensible security levels and restrictions, network-centric programming, dynamically extensible programs, internationalization, high performance, and Time-to-Market.
Java Foundation Classes provides a group of features for building graphical user interfaces (GUIs) and adding rich graphics functionality and interactivity to Java applications. GUI components include everything from buttons to split panes to tables.
JSP is highly used J2EE technology to express any text-based format such as HTML, SVG, WML, and XML. JSP elements are used to construct dynamic content very efficiently with little development effort.
Servlet extends the capabilities of the server. However, it can support any type of request, it is mostly implemented to support the HTTP web protocol which provides web developers with a simple, consistent mechanism for extending the functionality of a Web server and for accessing the existing business systems.
Apache Struts is an elegant, extensible framework for building enterprise-ready Java web applications. It is designed to streamline the development cycle, starting from building to deployment and maintenance of the application.
The Spring Framework is an application framework and inversion of the control container for the Java platform. The framework’s core features can be used by any Java application, but there are extensions for building web applications on top of the Java EE platform.
Hibernate ORM (Hibernate in short) is an object-relational mapping framework for the Java language, providing a framework for mapping an object-oriented domain model to a traditional relational database. Hibernate solves object-relational impedance mismatch problems by replacing direct persistence-related database accesses with high-level object handling functions.
The Java Persistence API provides a POJO persistence model for object-relational mapping. The Java Persistence API was developed by the EJB 3.0 software expert group as part of JSR 220, but its use is not limited to EJB software components.
Spring Boot helps you to create stand-alone, production-grade Spring-based Applications that you can run. We take an opinionated view of the Spring platform and third-party libraries so that you can get started with minimum fuss. You can use Spring Boot to create Java applications that can be started by using java-jar or more traditional war deployments. We also provide a command-line spring-based tool that runs “spring scripts”. Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".