Java is a general purpose programming language that is widely used for web applications. It enables users to develop and deploy applications on the Internet for servers, desktop computers, and small hand-held devices. Java applications are compiled into bytecode that runs on a Java Virtual Machine (JVM) allowing them to run on any platform that supports Java. Key Java technologies include Java Servlets for developing web applications, JavaServer Pages (JSP) to create dynamic web content, and Enterprise JavaBeans (EJB) for building the business logic of enterprise applications. J2EE (Java 2 Enterprise Edition) is a specification that provides a framework for developing multi-tiered, web-based enterprise applications.