Fórum Carregar imagem apartir de uma pasta #400531

06/05/2011

0

No meu sistema, teremos um estrutura de pasta, da seguinte forma. Existem pastas de 0 a 9. A imagem do cara, recebe como nome o número do CPF dele. Em pastas com números 6, estão todos os CPF's que comecem com seis. O que eu quero é o seguinte. Fazer um código ou classe única, que para vez e em cada página que eu preciso carregar a foto do cara(praticamente em todas, eu deva carregar esse código(um template). Para buscar eu tenho que fazer, pegar o primeiro número do cpf do usuário logado, vejo a pasta referente aquele número e então faço a pesquisa pelo cpf dele e retorno a imagem(foto) e carrego em minha página. Gostaria de um caminho, uma luz para fazer isso. Eu guardo no banco apenas o caminho da imagem. A imagem fica nas pastas.
Pjava

Pjava

Responder

Posts

09/05/2011

Davi Costa

vc precisa pensar em algumas coisas..definir a extensão do arquivo... jpg,png ou gif....
nomear todos esses arquivos nessa pasta predifinida, em WebContent...
com o (cpf).jpg e usar a tag: (obviamente se escolher jpg)
<h:graphicImage value="#{seubean.usuario.cpf}.jpg"/>



ou ainda criar um atributo string e anotá-lo como transient para o hibernate não considerar no banco,
com  o nome imagem por exemplo, e no seu get vc verifica se cpf está nuloe se não estiver vc retorna cpf+".jpg" e na tag do jsf vc pode usar, algo como :

<h:graphicImage value="#{seubean.usuario.imagem}"/>


Seria interessante tb, vc verificar se o arquivo existe e deixar nessa pasta uma imagem padrão para quando
 os usuários não tiverem imagem. Como assim?
depois de vc concatenar cpf+".jpg", vc tenta ver se esse arquivo existe se existir vc retorna a String normalmente senão vc retorna o texto desse arquivo padrão: "imagem_padrao.jpg" e vc mantêm esse arquilo na pasta com essa imagem padrão.


Só mais uma coisa que eu esqueci, se colocar só cpf+".jpg" o jsf não vai encontrar a imagem, tem qe colocar antes a pasta onde ele está, e essa pasta tem que estar dentro de WebContet.Exemplo:

"/imagens/"+cpf+".jpg";


Att Davi
Responder

Gostei + 0

09/05/2011

Davi Costa

Só mais uma informação que esqueci de passar, vc pode também usar as tags d primefaces.


Att Davi
Responder

Gostei + 0

10/05/2011

Dyego Carmo

Voce pode carregar direto do jar ...

NomeDaClass.class.getResourceAsStream("minha.jpg")

Funciona para os arquivos q estao no pacote NomeDaClass
Responder

Gostei + 0

10/05/2011

Pjava

Esse não está resolvido ainda, mas vou fechar esse post e se não resolver, pois não vou testar agora, ai posto tra vez.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar