Postagens

Criando e Executando Funções no MongoDB

Imagem
Olá pessoal, hoje iremos ver como realizar a criação e execução de funções dentro de uma base no banco de dados MongoDB.

Conhecendo o MongoDB Nos dias atuais o tema NoSQL vem sendo muito discutido, muitas empresas vem adotando este paradigma de armazenamento, mas como toda tecnologia existem prós e contras, para entender bem o tema recomento a leitura do livro NoSQL Essencial (NoSQL Destilled)dos autores Promod J. Sadalage e Martin Fowler, o livro mostra características de aplicações, modelos de NoSQL, entre outras detalhes importantes sobre adoção de qualquer banco desse segmento.
O MongoDB é um banco de dados NoSQL baseado no modelo de documentos, onde cada registro é armazenado em forma de um documento BSON, uma característica muito legal do MongoDB é justamente trabalhar neste formato, porque o formato JSON é amplamente utilizado pela maioria dos desenvolvedores, sendo assim o entendimento da estrutura de armazenamento se torna simples.
Criando Funções no MongoDB O MongoDB permite a…

Lendo e Manipulando arquivos CSV com Java

Olá hoje veremos como realizar a leitura e manipulação de arquivos CSV com Java, mostrando que as novas versões da plataforma Java deixaram algumas tarefas simples de serem realizadas.

Exemplo de Arquivo Hoje em dia é comum ao realizar integrações ou carga de dados o uso de arquivos CSV, isto porque, este arquivo possui uma estrutura de fácil entendimento e simples de manipular na maioria das plataformas de desenvolvimento.

Para realizar a leitura dos dados vamos manipular um arquivo com as seguintes colunas: namecpfagephone address:

name;cpf;age;phone;address caio;123456789;20;1145223643;AvenidaPaulista vinicius;147852369;18;1125253625;AvenidaManoel sandra;963258741;30;1174587858;RuaTeixeira regina;125478522;40;1145254536;RuaFernando fernando;785245563;42;1145253669;RuaPereira augusto;456123014;50;1125363633;AvenidaPaulinia maria;456123789;10;1125455525;AvenidaNossaSenhora
Para representar os dados em objetos Java iremos utilizar a seguinte classe:

importlombok.AllArgsConstruc…

Versionamento de Banco Dados com Flyway

Imagem
Olá pessoal, hoje iremos analisar e aprender como realizar o versionamento e gerenciamento das bases de dados relacionais utilizando o framework Flyway.

Versionamento de Banco Dados Ao trabalhar com desenvolvimento de sistemas é comum realizarmos o versionamento, isso porque uma aplicação pode necessitar de correções, novas funcionalidades e evoluções, onde para garantir a compatibilidade e cuidar do seu ciclo de vida, geramos versões onde é especificado quais itens estão presentes em cada release.
Vamos imaginar seguinte cenário: Sistema ERP1.0.0: Entrega dos módulos Financeiro e RH;1.1.0: Entrega do módulo Contas a Receber. Perceba que a ideia é controlar o que cada versão possui de diferente, e para controlar essas mudanças no lado da aplicação existem várias técnicas e ferramentas, mas e para controlar as mudanças no lado do Banco de dados ? 
Para isso podemos utilizar ferramentas de versionamento que ajudam a realizar este controle, a ferramenta que iremos utilizar é o Flyway.
Con…

Dicas para a Certificação OCM Java EE Enterprise Architect

Imagem
Olá pessoal, hoje irei postar e comentar algumas dicas para quem tem interesse em adquirir a certificação OCM Java EE 6 Enterprise Architect.

A Certificação Esta certificação se enquadra no titulo Master da Oracle, por esta razão ela é mais complexa do que as outras Certificações do mundo Java, para mais detalhes consulte a página oficial da certificação.

Fases da Certificação A certificação é composta por 5 fases, sendo 3 exames, 1 treinamento oficial e o envio de documentos, na seguinte ordem:
Realização de Curso Oficial;Exame 1Z0-807;Exame 1Z0-895;Exame 1Z0-866;Envio do curso oficial (Course Submission Form).
Realização do Curso Oficial Esta etapa é uma exigência que a Oracle faz principalmente para os exames OCM, onde cada candidato deve ter concluído um curso oficial, cada exame tem uma relação de cursos que podem ser realizados, onde você deve realizar pelo menos um curso, não sendo necessário realizar vários.
Você pode realizar o curso antes de começar o processo ou até mesmo no de…

Utilizando Profiles com SpringBoot

Imagem
Olá hoje iremos ver como trabalhar com Profiles dentro de aplicações desenvolvidas com SpringBoot.

O que são Profiles Profiles são recursos para determinar o ambiente onde a aplicação irá executar, e o Spring trabalha com esse tipo de situação de uma maneira muito transparente, e em aplicações onde utilizamos SpringBoot isso se torna ainda mais simples.

Imagine o cenário onde você tenha uma interface e sua implementação muda de acordo com o ambiente de execução, veja o exemplo:
Desenvolvimento (dev);Homologação (homolog);Produção (prod).
Criando Profiles Antes de tudo vamos criar uma aplicação com SpringBoot, caso tenha dúvidas de como criar uma aplicação veja Aqui , abaixo veja como ficou nosso pom.xml:
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.…

Criando uma Aplicação com SpringBoot e MongoDB

Imagem
Olá pessoal hoje iremos ver como criar uma aplicação utilizando SpringBoot e o banco NoSQL MongoDB.

Criando o Projeto Para criar um sistema usando o SpringBoot a melhor maneira seria criar o projeto via Maven, este processo pode ser realizado de várias maneiras: SpringInitializr;SpringIDE;Adicionar as dependências diretamente no pom.xml.  Segue como ficou o pom.xml do projeto:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56<?xml version="1.0" encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>br.com.cvinicius</groupId><artifactId>boot-data-mongodb</artifactId><ver…

Criando objetos com @Builder e @Value do framework Lombok

Imagem
Hoje iremos ver como utilizar as anotações @Builder e @Value do framework Lombok, visando melhorar a forma de criação de objetos.

Utilizando a anotação @Builder
O nome vem do Pattern Builder, que é um pattern que visa a criação de objetos, ou seja é um pattern de Criação.
Vamos analisar a classe abaixo:
1 2 3 4 5 6 7@Getter@BuilderpublicclassCliente{private String nome;private String cnpj;private String endereco;}
O arquivo compilado irá ter a seguinte estrutura:


No exemplo acima, notamos que o Lombok criou uma classe interna chamada ClienteBuilder, seguindo os preceitos do pattern, agora podemos criar um objeto Cliente utilizando uma forma fluente, assim deixando o código mais simples e funcional, como abaixo:

1 2 3 4 5Cliente.builder().nome("Nome do Cliente").cnpj("1234567890").endereco("São Paulo").build();
Quando trabalhamos com a criação de modelos de domínio complexos, onde cada entidade possui vários relacionamentos e atributos o uso dessa abordagem …