JavaWeb(五)---imgCode

imgCode 图片验证码

图片验证码:

代码操作:

/*imageType参数:BufferedImage.TYPE_INT_RGB(透明) ………… 等等,第一个参数第二个参数:宽度,高度*/
BufferedImage image = new BufferedImage(80,20,imageTye);
/*Graphics2D 获取到图片,用于在java平台获取到一个二维图形*/
/*Graphics2D :提供了对几何图形,坐标转换,颜色管理或者文本格式的控制*/
Graphics2D g = (Graphics2d)image.getGraphics();
/*设置图片的背景*/
g.setColor(Color.RED);
/*设置背景填充,第一个第二个是位置,三四是填充的大小。*/
g.fillRect(x,y,80,80);
/*向图片上写数据*/
/*设置图片上的文字颜色*/
g.setColor(Color.RED);
/*设置字体的风格*/
g.setFont(new Font("微软雅黑",Font.BOLD ,20));
/*将文本加入到图片,三个参数,第一个是文本,二三个是坐标*/
g.drawString(3601,10,10);
/*设置响应的MIME类型*/
response.setContextType("image/jpeg");
/*控制浏览器不能缓存*/
response.setDateHeader("expries",-1);
response.setHeader("Pragma","NO-cache");
response.setHeader("Cache-Control","No-cache");
/*图片发送回客户端*/
ImageIO.write(image,"jpg",response.getOutputStream());

在验证码设置中,有个看不清,换一张。
在里面再次请求:
两次请求的地址一样,服务器就指挥处理第一次请求,第二次请求得到的结果跟第一次结果就是一样的。 第一次缓存了上次的请求的结果。

所以:

    src = "/路径/………"+Math.random();
    /*这样每次就每次不一样的结果*/

创建session用于装每个用户的验证码:

    每创建一个随机数:

    HttpSession hs = request.getSession();

    hs.setAttribute("code", num);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值