快速业务通道

Struts 2.0整合Hibernate 3.2开发注册登录系统 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
; 47         </tr> 48        <tr> 49          <td style="text- align:right"> 50            <s:submit value="廣過" /> 51           </td> 52          <td style="text-align:left"> 53             <s:reset value="函?"/> 54           </td> 55        </tr> 56      </table> 57     </s:form> 58    <s:fielderror cssStyle="color:red"/> 59   </body> 60</html> 61

Struts 2.0整合Hibernate 3.2开发注册登录系统(7)

时间:2011-09-14 心梦帆影

8、在JSP页中所用到的验证码的生成页面makeCertPic.jsp(我们把它放在WebRoot的other目录下):

1<%@page contentType="image/jpeg" pageEncoding="gbk"%> 2<jsp:useBean id="image" scope="page" class="com.rong.other.makeCertPic" /> 3<% 4  String str = image.getCertPic(0,0,response.getOutputStream()); 5  // 将验证码保存到Session中 6  session.setAttribute("certCode", str); 7%>

其中,它调用了名为makeCertPic的Bean ,这个类主要用来生成彩色的验证图片,其代码如下:

1package com.rong.other; 2import java.awt.Color; 3import java.awt.Font; 4import java.awt.Graphics; 5import java.awt.image.BufferedImage; 6import java.io.IOException; 7import java.io.OutputStream; 8import java.util.Random; 9import javax.imageio.ImageIO; 10/** *//** 11 * 生成验证码图片 12 */ 13public class makeCertPic { 14  //验证码图片中可以出现的字符集,可根据需要修改 15  private char mapTable[]={ 16      ''a'',''b'',''c'',''d'',''e'',''f'', 17       ''g'',''h'',''i'',''j'',''k'',''l'', 18      ''m'',''n'',''o'',''p'',''q'',''r'', 19       ''s'',''t'',''u'',''v'',''w'',''x'', 20      ''y'',''z'',''0'',''1'',''2'',''3'', 21       ''4'',''5'',''6'',''7'',''8'',''9''}; 22  /** *//** 23   * 功能:生成彩色验证码图片 24   * 参数width为生成的图片的宽度,参数height为生成的图片的高度,参数os为页面的输出流 25   */ 26  public String getCertPic(int width, int height, OutputStream os) { 27     if(width<=0)width=60; 28    if(height<=0)height=20;   29     BufferedImage image = new BufferedImage(width, height, 30                   BufferedImage.TYPE_INT_RGB); 31    // 获取图形上下文 32    Graphics g = image.getGraphics(); 33    // 设定背景色 34    g.setColor(new Color (0xDCDCDC)); 35    g.fillRect(0, 0, width, height); 36    //画边框 37     g.setColor(Color.black); 38    g.drawRect(0,0,width-1,height-1); 39    // 取 随机产生的认证码 40    String strEnsure = ""; 41    // 4代表4位验证码,如果要生 成更多位的认证码,则加大数值 42    for(int i=0; i<4; ++i) { 43       strEnsure += mapTable[(int)(mapTable.length*Math.random())]; 44    } 45     // 将认证码显示到图象中,如果要生成更多位的认证码,增加drawString语句 46     g.set

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号