Olá desenvolvedores, seguindo com o tutorial sobre a criação de miniatura de imagem, com o objetivo é entregar uma melhor performance ao sistema. No tutorial anterior nos concentramos na criação da imagem deixando-a, inclusive, preparada para o download. Dessa forma a imagem em seu tamanho original ficará armazenada no base de dados, sendo utilizada apenas para o download.

CRIANDO ATRIBUTO DO OBJETO

Na classe BeanCursoJsp.java onde temos a representação da tabela do banco de dados, criaremos um atributo para a miniatura da imagem, bem como os métodos get e set correspondentes ao atributo.

private String fotoBase64Miniatura;

O passo agora é setar no objeto usuário a foto em miniatura. Assim, na servlet Usuario.java, após a criação da miniatura, iremos “setá-la” para o usuário.

usuario.setFotoBase64Miniatura(miniaturaBase64);

CRIANDO CAMPO NO BANCO DE DADOS

E uma vez que criamos o atributo para o objeto, consequentemente temos que criá-lo também no banco de dados. Assim, abra o pgAdmin selecione em sua Database a tabela usuario, iremos alterá-la adicionando uma nova coluna para a miniatura da imagem do tipo text. O tipo text armazena dados de tamanho variável.

IMPLEMENTANDO NA CLASSE DAO

E agora o método salvar() da classe de conexão DAO – Data Access Object, receberá em seu insert mais este atributo. Toda operação que necessita de uma conexão com o banco de dados passa exclusiva e obrigatoriamente pela classe DAO. Desse modo, é possível separar em aplicações que fazem uso da persistência de dados, as regras de negócio, das regras de acesso ao banco de dados.

E decorrente da quantidade de parâmetros que nossa aplicação já acumula, abstraímos alguns dos valores nos concentrando essencialmente no atributo da miniatura da imagem.

E também iremos inserir mais este parâmetro da foto em miniatura no método atualizar().

TESTANTO A APLICAÇÃO

Agora ligue seu servidor e teste a aplicação, lembrando sempre de verificar no banco de dados se eles foram gravados com sucesso e se o foram corretamente. E como você pode notar na imagem abaixo a imagem foi gravada com sucesso.

EM POUCAS PALAVRAS

A imagem em seu tamanho original é demasiado pesada para o sistema carregar em tempo de execução. Não atentar para este ponto específico é o caminho mais curto para em pouco tempo ter a performance do seu sistema comprometida. E a consequência é que ao longo do tempo o usuário frustrado deixe de utilizar sua solução. Então, além de desenvolver seus sistemas, cuidar da usabilidade, da experiência do usuário, você deve também se preocupar com a performance. Bom, eu fico por aqui e nós nos vemos no próximo tutorial.