O Java EE é uma plataforma cujo o seu objetivo é facilitar a criação de programas para ambientes corporativos utilizando Java. Ele tem pontos importantes e especificações que permitem a escolha de multi-vendors, preocupação com retrocompatibilidade, além da sua maior força que é uma comunidade forte e vibrante. Nesse momento, o projeto está passando por diversas mudanças, dentre elas a migração para o Eclipse Foundation com o novo nome, Jakarta EE, e uma nova estrutura de trabalho. Descubra um pouco da história do Java EE, o atual cenário da plataforma, além do futuro como Jakarta EE.
As gerações do Java EE
O mundo do Java EE pode ser dividido em quatro gerações:
- Primeira geração: Nesse primeiro passo da tecnologia, a maior característica se dá pelo fato que os componentes como JAX-WS estão embarcados no JDK. Esses módulos são os mesmos que foram removidos na versão 11 do JDK;
- Segunda geração: A segunda geração é caracterizada pela nova nomenclatura, o J2EE além de uma plataforma específica é a primeira interação do Java EE fora do JDK. Ele começou com o J2EE 1.2 em dezembro de 1999 e foi até a versão J2EE 1.4, em novembro de 2003;
- A terceira geração: Nessa época existiam dois pontos principais, o primeiro foi a nova nomenclatura do Java EE, JEE sem o '2', além da transição da Sun para a Oracle. Teve início com o Java EE 5 em maio de 2006 e foi evoluindo até 31 de agosto de 2017 com o Java EE 8.Quarta geração: A quarta e última geração é caracterizada, pela submissão da Oracle para o Eclipse Foundation. Com isso, todo código, especificação e TCKs são enviados para o Eclipse Foundation, além de uma nova estrutura organizacional o projeto tem um novo nome, Jakarta EE, e um novo logo, ambos selecionados de maneira transparente e com a contribuição da comunidade.
O que é NoSQL?
O banco de dados não relacional é um novo conceito de persistência que provê mecanismo de modelagem que vai além da tecnologia relacional. Esse tipo de banco de dados possui velocidade e alta escalabilidade. Uma das maneiras de categorizá-lo são pelos tipos, cujos os mais famosos são: chave valor, família de coluna, documentos e grafos. Essa tecnologia de persistência estão se tornando cada vez mais relevantes em diversos tipos de aplicações, que incluem as financeiras, por exemplo, no ranking do DB-Engines quatro dos dez bancos mais populares são NoSQL e hoje existem aproximadamente duzentos e vinte cinco bancos de dados não relacionais.
Java EE e NoSQL
Como consequência dessa relevância e dessa popularidade, diversas discussões foram iniciadas numa maneira de padronizar as chamadas dos bancos NoSQL. Uma API para NoSQL, que inclusive foi alvo de proposta para o Java EE 9 pela Oracle, os pontos levantados nessa proposta foram:
- O JPA não foi desenhado para o NoSQL;
- JPA para o NoSQL implica no uso inconsistente de anotações;
- Um grupo de APIs não são adequados para todos os tipos de bancos de dados;
- A diversidade do NoSQL é uma característica importante e preponderante para essa tecnologia.
Porém, assim como Java EE 9, essa proposta nunca foi concluída.
Com o objetivo de ocupar essa lacuna deixada pela proposta do Java EE 9 para o NoSQL algumas implementações de JPA iniciaram extensões que permitem o uso de NoSQL com o JPA é o caso do Hibernate OGM e do Eclipse Link NoSQL.
Jakarta EE e NoSQL
Com o objetivo de trazer novidades para a plataforma e facilidades no desenvolvimento, o assunto Java e NoSQL se demonstrou evidente novamente, dessa vez, tornando esse desafio como a primeira especificação dentro do Jakarta EE. O Jakarta EE utilizará o Eclipse JNoSQL cuja abordagem destaca:
- O seu foco que será o suporte aos bancos NoSQL do tipo chave valor, família de colunas, documentos e grafos;
- Possuirá uma camada de comunicação, como o JDBC, para cada tipo mencionado com exceção do Grafo que irá utilizar o Apache TinkerPop;
- Existirá uma camada de Mapeamento, como o JPA, para cada tipo suportado, sendo que será necessário um grande esforço para compartilhar as mesmas anotações entre os tipos;
- As APIs tanto de comunicação quanto de mapeamento serão extensíveis o suficiente para suportar comportamentos específicos de vendors.
Mais informações sobre o Eclipse JNoSQL estão disponíveis neste artigo.
O objetivo desse artigo é falar um pouco sobre o histórico do Java EE e sua relevância no mercado para os desenvolvedores Java, agora nas mãos do Jakarta EE, o Java EE demonstra um futuro cada vez mais vibrante olhando para as novas necessidades dentro do mundo Java. Com o crescimento da adoção do NoSQL no mundo corporativo, a escolha de uma nova especificação visando facilitar esse desafio, certamente, será muito recebida pela comunidade.
Java EE versus Jakarta EE
by Paulo Seibel,
Re: Java EE versus Jakarta EE
by Otavio Santana,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Java EE versus Jakarta EE
by Paulo Seibel,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
Para os desenvolvedores Java que utilizam o IDE Netbeans qual será a opção de desenvolvimento agora que o Java EE passa para a comunidade Eclipse?
Quem define o futuro da linguagem Java? Ainda é propriedade da Oracle ou também será, em futuro próximo, licenciada para alguma Fundação Open?
Há um aviso da Oracle que a partir de 2020 o JVM será licenciada apenas para uso pessoal não mais para uso comercial. Como fica a questão do mundo dos desenvolvedores Java?
Estou começando estudar java e estou tentando entender essas questões todas?
Re: Java EE versus Jakarta EE
by Otavio Santana,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
Olá Paulo tudo bem?
1) Para os desenvolvedores Java que utilizam o IDE Netbeans qual será a opção de desenvolvimento agora que o Java EE passa para a comunidade Eclipse?
Isso não mudará em nada, a Eclipse Foundation é muito mais que uma IDE é uma fundação open source como a Apache. Assim, você poderá utilizar o Netbeans sem problema algum
2) Quem define o futuro da linguagem Java? Ainda é propriedade da Oracle ou também será, em futuro próximo, licenciada para alguma Fundação Open?
O futuro do Java é definido pelo JCP a Oracle é apenas umas das empresas que tem o direito a voto nas especificações. Atualmente, o JCP tem mais de cinco mil membros dentre eles empresas, comunidade e indivíduos. Portanto, você pode definir o futuro do Java caso queria.
3) Há um aviso da Oracle que a partir de 2020 o JVM será licenciada apenas para uso pessoal não mais para uso comercial. Como fica a questão do mundo dos desenvolvedores Java?
A grande vantagem do Java é que ela é uma especificação com diversas implementações. Ou seja, basta utilizar a versão open source, o OpenJDK ou uma das diversas implementações de JVM como da Azul, da RedHat o Correto da Amazon, etc.
Se não ficou claro ou ainda ficou alguma dúvida, por favor, deixe-me saber.
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...
Re: Java EE versus Jakarta EE
by William Alves da Silva,
Seu comentário está aguardando aprovação dos moderadores. Obrigado por participar da discussão!
headcrashing.wordpress.com/2019/05/03/negotiati...