J2SE vs J2EE
Java es uno de los lenguajes de programación orientados a objetos más utilizados, que se usa desde el desarrollo de software hasta el desarrollo web actual. Es un lenguaje de programación general y concurrente. Fue desarrollado originalmente por Sun Microsystems en 1995. James Gosling es el padre del lenguaje de programación Java. Oracle Corporation ahora posee Java (luego de comprar Sun Microsystems recientemente). Java es un lenguaje fuertemente tipado que admite una variedad de plataformas desde Windows a UNIX. Java está licenciado bajo la Licencia Pública General de GNU. Desde su lanzamiento inicial en 1995 (Java 1.0), ha crecido y se ha convertido en el lenguaje de desarrollo dominante para el desarrollo de aplicaciones basadas en web. J2SE es Java 2 Platform Standard Edition, que proporciona el conjunto de clases básicas y API. Java 6 es su versión estable actual. J2EE es Java 2 Platform Enterprise Edition, que proporciona tecnologías avanzadas y API basadas en la funcionalidad proporcionada por J2SE. Los desarrolladores de Java cambiaron los nombres de todas las ediciones recientemente, y ahora J2SE y J2EE se conocen como Java SE y Java EE respectivamente.
Qué es J2SE?
J2SE es una colección de clases y API básicas de Java. Su última versión Java 6 (también conocida como Java Standard Edition 6.0 o Java SE 6 o Java 1.6), con nombre en código de Mustang, se lanzó en diciembre de 2006. La revisión actual es la Actualización 26, que se lanzó en junio de 2011. Tiene 3700 + Clases e interfaces. Se centra en las nuevas especificaciones y API, incluidos XML, servicios web, JDBC versión 4.0, programación basada en anotaciones, API para el compilador de Java y GUI del cliente de la aplicación. Esto estaba por encima de características ya existentes como anotaciones, genéricos y Autoboxing. Las anotaciones son un mecanismo para etiquetar clases con metadatos para que puedan ser utilizados por programas conscientes de metadatos. Los genéricos son un mecanismo de especificación de tipos para objetos que pertenecen a colecciones como Arraylists, por lo que la seguridad de tipos está garantizada en el momento de la compilación. Autoboxing permite las conversiones automáticas entre tipos primitivos (por ejemplo, int) y tipos de envoltura (por ejemplo, entero). Además, la compatibilidad con versiones anteriores de Windows (serie Win9x) se eliminó a partir de la Actualización 7.
Qué es J2EE?
J2EE proporciona una plataforma de programación de servidor en Java. J2EE agrega funcionalidad (bibliotecas) para el despliegue de aplicaciones java distribuidas y de múltiples niveles que se ejecutan en servidores de aplicaciones. La versión actual de J2EE es Java EE 6. JDBC (Java Database Connectivity), RMI (Remote Method Invocation), JMS (Java Message Service), servicios web y XML son algunas de las especificaciones ofrecidas por Java EE. Además, también se ofrecen especificaciones exclusivas de Java EE como Enterprise JavaBeans (EJB), Conectadores, Servlets, portlets, Java Server Pages (JSP). El objetivo de esto es permitir a los programadores desarrollar aplicaciones con alta escalabilidad y portabilidad. Los desarrolladores de Java EE pueden centrarse en la lógica empresarial (en lugar de infraestructura / integración) porque los servidores de aplicaciones se ocuparán de las transacciones, la seguridad y la concurrencia.
¿Cuál es la diferencia entre J2SE y J2EE??
J2SE es una colección de clases base y API que proporciona una funcionalidad básica (lenguaje Java, máquina virtual y bibliotecas base) para desarrollar aplicaciones Java estándar, mientras que J2EE ofrece una colección de tecnologías y API para desarrollar aplicaciones empresariales de múltiples niveles. En otras palabras, J2SE se usa para desarrollar aplicaciones que se ejecutan como programas o applets de escritorio independientes, pero J2EE se usa normalmente para escribir aplicaciones que se ejecutan dentro de un contenedor J2EE. J2EE tiene toda la funcionalidad de J2SE. Pero tiene una funcionalidad adicional como EJB, JSP, Servelts y tecnología XML. También incluye pruebas para verificar el cumplimiento de las aplicaciones con las aplicaciones existentes que admiten J2EE.