【Servlet】生成指定长度随机验证码简化版
2017-07-28 10:43
531 查看
img.java文件:
WEB.XML配置
效果:
package test; import java.awt.Font; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.IOException; import java.io.OutputStream; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class img extends HttpServlet { private static final long serialVersionUID = -3703013493165293682L; @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("image/png"); final int MAXLENGTH=6;//验证码最大长度 //在内存中创建一个图片 BufferedImage image=new BufferedImage(100, 30, BufferedImage.TYPE_INT_RGB); //创建一个随机数 String number=""; Random r =new Random(); for (int i=0;i<MAXLENGTH;i++){ number+=r.nextInt(10); } //获得画笔 Graphics g=image.getGraphics(); //设置字体 g.setFont(new Font("华文新魏", Font.BOLD, 16)); //往图片上加文字 g.drawString(number, 20, 20); //将验证码文字保存到Session request.getSession().setAttribute("verifyCode", number); //获得输出流 OutputStream os=response.getOutputStream(); //输出图片到网页 ImageIO.write(image, "png", os); //关流 os.close(); } }HTML内容:
<img src="imgAction" onclick="this.src='imgAction?'+Math.random();" >
WEB.XML配置
<servlet> <servlet-name>img</servlet-name> <servlet-class>test.img</servlet-class> </servlet> <servlet-mapping> <servlet-name>img</servlet-name> <url-pattern>/imgAction</url-pattern> </servlet-mapping>
效果:
相关文章推荐
- 设计一个函数,根据指定长度生成对应的验证码(由数字和大小写英文字母构成的随机字符串)
- 随机生成指定长度的验证码(非图片版)
- servlet随机生成验证码
- 随机生成字母数字验证码,可定义验证码的长度
- Servlet生成随机验证码
- 原生JS实现随机生成指定位数的验证码并校验
- Python--随机生成指定长度的密码
- java生成指定长度的随机字符串
- python随机生成指定长度密码的方法
- *自创*可变长度随机数字/字母的生成小结(针对文件上传及验证码)
- 怎么随机生成字母数字验证码并可定义验证码的长度
- Java指定长度随机生成的字符串,且这个字符串必须包含大小写字母和数字
- Java随机密码生成器,Java随机生成长度不少于6的指定长度的密码,且这个字符串必须包含大小写字母、数字和特殊字符,四种的任意三种
- 随机生成字母数字验证码,可定义验证码的长度
- 生成指定长度的随机字符串
- Python随机生成指定长度字符串并保存到mysql中
- 自定义随机生成指定的长度字符串
- Servlet生成随机验证码
- js生成指定范围内指定长度随机不重复的字符串数组
- (C#)生成指定长度的随机字符串的通用方法