Os exemplos deste artigo compartilham o código de verificação de imagem Java para sua referência. O conteúdo específico é o seguinte
Página da web Efeito de exibição:
index.jsp
Use duas maneiras de forçar as atualizações da imagem:
1. Defina a saída da imagem sem cache.
2. Use JS para alterar o endereço solicitado.
<%@ Page Language = "java" import = "java.util. var time = new Date (). getTime (); // O navegador acredita que a mesma ação (filtrada) não precisa responder, por isso usa o valor do tempo para alterar o valor SRC (ou seja, a solicitação) (de fato, o mesmo pedido de solicitação </script> </script> </script> </script> </script> </script> </script> </script> </script> </script> </script> <H2> Changsha, Hunan </h2> <h3> Publicar o método 1 .... </h3> <img src = "imagens/1.jpg"/> <br/> <a href = "jsps/a.jsp"> ir para subpagem </a> <hr/> <form> name: <input type = "" name = "pwd"/> <br/> Confirmar senha: <input type = "text" nome = pwd2/> <br/> Código de verificação: <input type = "text"/> <img id = "_ img" src = "confirm"/> <!-não feas <a href = "confirm"> não pode ver </aa> href = "javascript: changeiMg ();"> não pode ver claramente </a> <br/> <input type = "submit" value = "register"/> </morm> </body> </html>
Código Java que gera automaticamente o código de verificação
Categorias -chave (as classes a seguir são o conteúdo da parte básica)
BufferImage
Imageio
Graphics/Graphics2d
importar java.awt.color; importar java.awt.font; importar java.awt.graphics; importar java.awt.image.bufferedImage; importar java.io.ioException; importação javax.SerVLeR.util.random; import javax.image.Imageio; importação de javax.SerVLet.RerSletL.Random; javax.servlet.http.httpServlet; importar javax.servlet.http.httpServletRequest; importar javax.servlet.http.httpServletResponse; classe public Images ServEnstLendLervletlet {@Override SwortResTonst; Servletexception, ioexception {// System.out.println ("jinlaile"); resp.setContentType ("Image/jpeg"); // jpeg é o formato da imagem. Defina a imagem do tipo de conteúdo de resposta como jpeg int width = 64; int altura = 40; BufferImage bimg = new bufferImage (largura, altura, bufferImage.type_int_rgb); Gráficos g = bimg.getgraphics (); // background g.setColor (color.white); G.FillRect (0, 0, largura, altura); // font color g.setfont (nova fonte ("aa", font.bold, 18)); // Use números aleatórios para gerar código de verificação: 4 números inteiros dentro de 0 ~ 9 aleatória r = novo aleatório (); para (int i = 0; i <= 4; i ++) {int t = r.nextInt (10); // inteiros aleatórios dentro de 10 int y = 10+r.nextint (20); // posições para cima e para baixo: 10 ~ 30 cor C = nova cor (R.NextInt (255), R.nextint (255), r.nextInt (255); g.setColor (c); g.DrawString (""+t, i*16, y); } // desenha linhas de interferência para (int i = 1; i <8; i ++) {color c = new cor (r.nextint (255), r.nextint (255), r.nextint (255)); g.setColor (c); G.Drawline (R.NextInt (Width), R.NextInt (altura), R.Nextint (Width), R.Nextint (altura)); } // Flash o gráfico no objeto BIMG G.Dispose (); // equivalente ao método Close () em IO com Flush Automatic (); Imageio.write (bimg, "jpeg", resp.getOutputStream ()); // Obtenha o objeto O outputStream do req através do RESP, envie -o para o encapsulamento do soquete do cliente, ou seja, escreva para o cliente}}web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi: schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> Display> </exibir-name> <! <servlet-name>bbbb</servlet-name> <jsp-file>/WEB-INF/b.jsp</jsp-file> </servlet> <!-- Access the java code that generates the verification code--> <servlet> <servlet-name>img</servlet-name> <servlet-class>cn.hncu.servlet.ImageServlet</servlet-class> </servlet> <Verlet-Mapping> <Verlet-name> bbbb </servlet-name> <url-pattern> /bb.asp </url-tattern> </servlet-mapping> <siplim-mapping> </url-name> iMg </Servlet-name> <url-Pattern>/Confirm </url-tattern> </Servlet-Mapping> </list-list> </web-App>