Java is an object-oriented programming language that is platform independent and runs on all hardware without modification. It was developed by Sun and adds features like automatic memory management. EJB is a software component in Sun's J2EE platform that provides a pure Java environment for developing distributed applications and resides in an EJB container. SQL is a language used to interrogate and process data in a relational database that was originally developed by IBM for mainframes and is supported by all database systems.