Boteco Digital

Java

A biblioteca OpenPDF é um fork da biblioteca iText 4 sob as licenças LGPL eMPL. Ela permite a criação de arquivos PDFs de maneira bastante fácil e simples. Para começar a criar um PDF, criamos um projeto maven adicionando a dependência da biblioteca. Após isso podemos criar o primeiro documento PDF através do seguinte código: Na linha 2 começamos criando nosso objeto que representa o documento, na linha 3 criamos o writer que irá escutar o objeto document e irá […]

mais
Tags
Java Web

Para começar vamos entender o que é um serviço REST: Representational State Transfer é um estilo arquitetural para aplicações cliente-servidor distribuídas e descentralizadas sobre a estrutura da Web. Este estilo tem como diferencial a utilização da infraestrutura web existente, como servidores, bibliotecas de clientes, entre outros, permitindo uma maneira simples de organizar as interações entre sistemas independentes. Ao ser criado, o REST reuniu um conjunto de restrições arquiteturais descritas abaixo: Cliente/Servidor: As responsabilidades devem ser separadas entre o cliente e […]

mais
Java

A grande maioria das aplicações web necessita acessar banco de dados. Em muitos casos a conexão com o banco de dados se torna uma gargalo e gerenciar um pool de conexões dentro de nossa aplicação pode ser um pouco complicado. Em servidores de aplicação/web container este recurso é disponibilizado por meio de uma implementação de Datasource, no Tomcat especificamente é baseado no pool de conexão DBCP do projeto Commons. Então vamos criar um Datasource no Tomcat, mas antes de tudo, […]

mais
Java

Um hash é uma sequencia de bits geradas por um algoritmo de dispersão, normalmente representado em forma hexadecimal, buscando transformar uma grande quantidade de dados em uma pequena quantidade que os represente. O processo de hash é um processo de somente uma via, já que uma vez gerado através de uma informação não é possível utilizar o hash para obter a informação original. Um hash busca identificar uma informação unicamente, e é muito utilizada para fazer checksums de arquivos e […]

mais
Java

Em muita situações precisamos realizar um requisição Http através de nossos programas, seja para baixar um arquivo ou realizar uma requisição a um serviço REST, onde precisamos de um controle melhor de qual método Http utilizar, headers enviar e receber, códigos de resposta, etc. Para isso o HttpClient facilita bastante. Para começar vamos importar as bibliotecas, se você utiliza o maven adicione a seguinte dependência: Para realizar uma requisição necessitamos criar um objeto HttpClient para transmitir a requisição para o […]

mais
Tags
Java

Enums são uma forma de restringir uma variável para esta poder assumir apenas alguns pouco valores pré-definidos, resumindo um valor de uma lista enumerada. O uso de enums pode reduzir os bugs do código como também deixar ele mais legível. Pensando um pouco, se estivermos em desenvolvendo um sistema de lanchonete e precisarmos especificar o tamanho do café. Poderíamos guardar este valor em um int, ou em uma String mas teríamos que escrever várias regras para validar e somente aceitar […]

mais
Java

Lambda é um recurso muito esperado na linguagem java sendo implementado na versão 8 e já presente nas linguagens funcionais há certo tempo. Ele deve alterar como utilizamos a linguagem, pois é bastante comum ao utilizarmos uma API, termos de implementar uma interface com uma classe anônima que possui somente um método, geralmente o que queremos fazer é passar um método para um objeto para ele ser executado em certo momento, e a forma como fazemos acaba sendo um pouco […]

mais
Java

Em versões mais antigas do Servlet tínhamos que apelar para APIs externas para realizar o upload de arquivos no java, agora com Servlet 3 o trabalho ficou mais fácil. Para começar vamos ao formulário, não esquecendo do enctype=”multipart/form-data” para o arquivo ser enviado junto com a requisição. MultipartConfig Annotation Para lidar com requisições multipart/form-data devemos anotar o Servlet com a anotação @MultipartConfig e configurar seus atributos com as configurações de upload. MaxFileSize: Especifica o tamanho máximo de cada arquivo que […]

mais
Java

Em muitos casos necessitamos manipular arquivos compactados, sendo criando arquivos compactados no formato zip ou descompactando para para leitura. Para estas funcionalidades o Java nos fornece a classe ZipOutputStream. Vamos ao código, primeiro compactamos uma String qualquer: Na linha 4 criamos um objeto FileOutputStream que é um fluxo de saída para um arquivo onde iremos gravar nossos dados compactados. Utilizaremos este objeto para criarmos nosso objeto ZipOutputStream onde ao escrevermos no ZipOutputStream ele irá compactar e passar os dados para […]

mais
Java

Uma atividade bastante comum ao programarmos é agrupar uma série de objetos para trabalharmos com eles como se fossem um única unidade. Uma coleção é utilizada para armazenar, recuperar, percorrer e outras manipulações de dados. Normalmente uma coleção armazena dados que formam um grupo natural normalmente do mesmo tipo como Clientes, Veículos, Contas ou outros objetos mais abstratos. Se você já trabalhou um pouco Java já utilizou uma de suas classes a ArrayList com certeza. O Framework Collections é composto […]

mais