package servlet; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.PrintWriter; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/servletImage") public class servletImage extends HttpServlet { public servletImage() { super(); } public void destroy() { super.destroy(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setHeader("Expires", "-1"); response.setHeader("Cache-Control", "no-cache"); response.setHeader("Pragma", "no-cache"); int width = 120; int height = 25; //创建一副内存图像:BufferedImage BufferedImage image = new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB); //得到属于该图片的画笔:Graphics Graphics g = image.getGraphics(); //画边框 g.setColor(Color.BLUE); g.drawRect(0, 0, width, height); //填充背景色 g.setColor(Color.YELLOW); g.fillRect(1, 1, width-2, height-2); //画干扰线 g.setColor(Color.GRAY); Random r = new Random(); for(int i=0;i<10;i++) g.drawLine(r.nextInt(width), r.nextInt(height), r.nextInt(width), r.nextInt(height)); //随机数字 g.setColor(Color.RED); g.setFont(new Font("宋体", Font.BOLD|Font.ITALIC, 20)); int x = 23; StringBuffer sb = new StringBuffer(); for(int i=0;i<4;i++){ String checkcode = r.nextInt(10)+""; sb.append(checkcode); g.drawString(checkcode, x, 20); x+=20; } System.out.println(sb.toString()); //把验证码放到HttpSession中 request.getSession().setAttribute("checkcode", sb.toString()); ImageIO.write(image, "jpg", response.getOutputStream()); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }

liulian666 LV2
2024年7月23日
25jsiahs LV2
2024年6月26日
吞吞吐吐她 LV6
2024年6月5日
asddwh LV13
2024年1月3日
zhtssss LV1
2023年7月4日
oracleanacarge LV6
2023年7月3日
mrcao95 LV2
2023年6月26日
女王不该在山炮村养花 LV8
2023年4月16日
李亮 LV19
2023年3月6日
Numpile LV3
2023年3月1日

g1121345342 LV9
4月29日
zhoubowen LV3
2024年12月29日
liulian666 LV2
2024年7月23日
25jsiahs LV2
2024年6月26日
TY0165 LV20
2024年6月22日
微信网友_6808953284677632 LV2
2024年6月21日
1516299986 LV9
2024年6月14日
bw200488 LV6
2024年6月12日
坚持仙蛊
2024年6月12日
暂无贡献等级
吞吞吐吐她 LV6
2024年6月5日