J2SE vs J2EE
Java é uma das linguagens de programação orientada a objetos mais amplamente usadas, que é usada desde o desenvolvimento de software até o desenvolvimento web atualmente. É uma linguagem de programação concorrente e de propósito geral. Foi originalmente desenvolvido pela Sun Microsystems em 1995. James Gosling é o pai da linguagem de programação Java. A Oracle Corporation agora possui Java (após comprar a Sun Microsystems recentemente). Java é uma linguagem fortemente tipada que suporta uma variedade de plataformas de Windows a UNIX. Java é licenciado sob a GNU General Public License. Desde seu lançamento inicial em 1995 (Java 1.0), ela cresceu e se tornou a linguagem de desenvolvimento dominante para o desenvolvimento de aplicativos baseados na web. J2SE é o Java 2 Platform Standard Edition, que fornece o conjunto de classes básicas e APIs. Java 6 é sua versão estável atual. J2EE é Java 2 Platform Enterprise Edition,que fornece tecnologias avançadas e APIs construídas com base na funcionalidade fornecida pelo J2SE. Os desenvolvedores de Java mudaram os nomes de todas as edições recentemente e agora J2SE e J2EE são conhecidos como Java SE e Java EE, respectivamente.
O que é J2SE?
J2SE é uma coleção de classes e APIs Java básicas. Sua versão mais recente Java 6 (também conhecido como Java Standard Edition 6.0 ou Java SE 6 ou Java 1.6), codinome Mustang, foi lançada em dezembro de 2006. A revisão atual é a atualização 26, lançada em junho de 2011. Possui 3700 + classes e interfaces. Ele se concentra em novas especificações e APIs, incluindo XML, Web Services, JDBC versão 4.0, programação baseada em Anotações, APIs para compilador Java e GUI do cliente de aplicativo. Isso foi além de recursos já existentes, como Anotações, Genéricos e Autoboxing. As anotações são um mecanismo para marcar classes com metadados para que eles possam ser usados por programas que reconhecem metadados. Genéricos é um mecanismo de especificação de tipos para objetos pertencentes a coleções, como Arraylists, de forma que a segurança de tipo seja garantida em tempo de compilação. Autoboxing permite as conversões automáticas entre tipos primitivos (por exemplo, int) e tipos de invólucro (por exemplo, Inteiro). Além disso, o suporte para versões mais antigas do Windows (série Win9x) foi removido a partir da atualização 7.
O que é J2EE?
J2EE fornece uma plataforma de programação de servidor em Java. J2EE adiciona funcionalidade (bibliotecas) para a implementação de aplicativos java distribuídos e multicamadas em execução em servidores de aplicativos. A versão atual do J2EE é Java EE 6. JDBC (Java Database Connectivity), RMI (Remote Method Invocation), JMS (Java Message Service), serviços da web e XML são algumas das especificações oferecidas pelo Java EE. Além disso, especificações exclusivas para Java EE, como Enterprise JavaBeans (EJB), Conectores, Servlets, portlets, Java Server Pages (JSP) também são oferecidas. O objetivo é permitir que os programadores desenvolvam aplicativos com alta escalabilidade e portabilidade. Os desenvolvedores Java EE podem se concentrar na lógica de negócios (em vez de infraestrutura / integração) porque os servidores de aplicativos cuidarão das transações, segurança e simultaneidade.
Qual é a diferença entre J2SE e J2EE?
J2SE é uma coleção de classes básicas e APIs que fornecem funcionalidade básica (linguagem Java, máquina virtual e bibliotecas básicas) para desenvolver aplicativos Java padrão, enquanto J2EE oferece uma coleção de tecnologias e APIs para desenvolver aplicativos corporativos multicamadas. Em outras palavras, J2SE é usado para desenvolver aplicativos que são executados como programas de desktop independentes ou miniaplicativos, mas J2EE é normalmente usado para escrever aplicativos que são executados dentro de um contêiner J2EE. O J2EE possui todas as funcionalidades do J2SE. Porém, possui funcionalidades adicionais como tecnologia EJB, JSP, Servelts e XML. Também inclui testes para verificar a conformidade de aplicativos com aplicativos existentes que suportam J2EE.