| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
package com.work.core.image;
import java.awt.Color; 中国网管论坛bbs.bitsCN.com
import java.awt.Font; 网管论坛bbs_bitsCN_com
import java.awt.Graphics;
网管论坛bbs_bitsCN_com
import java.awt.image.BufferedImage;
import java.io.IOException;
网管联盟bitsCN_com
import java.util.Random; 网管网www.bitscn.com
网管下载dl.bitscn.com
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
网管u家u.bitsCN.com
import javax.servlet.http.HttpServlet;
网管论坛bbs_bitsCN_com
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
网管联盟bitsCN_com
import org.apache.commons.logging.Log; 网管bitscn_com
import org.apache.commons.logging.LogFactory;
/** 网管论坛bbs_bitsCN_com
* @author wangmj 中国网管论坛bbs.bitsCN.com
* 生成随机的验证码!防止暴利破解。 网管u家u.bitscn@com
*/
网管网www_bitscn_com
public class AuthImage extends HttpServlet {
private static Log log = LogFactory.getLog(AuthImage.class);
/** 网管网www_bitscn_com
*
中国网管论坛bbs.bitsCN.com
*/
private static final long serialVersionUID = 8165458985542870320L;
网管bitscn_com
//设置图形验证码中的字符串的字体的大小
中国网管联盟bitsCN.com
private Font mFont = new Font("Arial Black", Font.PLAIN, 16); 网管u家u.bitscn@com
网管论坛bbs_bitsCN_com
public void init() throws ServletException {
super.init(); 网管bitscn_com
}
/**
网管网www.bitscn.com
* 生成随机颜色 网管bitscn_com
* @param fc 网管网www.bitscn.com
* @param bc
网管网www.bitscn.com
* @return 网管网www_bitscn_com
*/ 网管论坛bbs_bitsCN_com
Color getRandColor(int fc, int bc) { 网管u家u.bitsCN.com
Random random = new Random();
网管论坛bbs_bitsCN_com
if (fc > 255) 网管论坛bbs_bitsCN_com
fc = 255; 网管联盟bitsCN@com
if (bc > 255)
bc = 255; 网管网www.bitscn.com
int r = fc + random.nextInt(bc - fc); 网管网www_bitscn_com
int g = fc + random.nextInt(bc - fc);
网管u家u.bitsCN.com
int b = fc + random.nextInt(bc - fc);
return new Color(r, g, b);
}
网管下载dl.bitscn.com
网管网www_bitscn_com
/* (non-Javadoc) 网管网www_bitscn_com
* @see javax.servlet.http.HttpServlet#service(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) 中国网管联盟bitsCN.com
*/ 网管联盟bitsCN_com
public void service(HttpServletRequest request, HttpServletResponse response) 网管下载dl.bitscn.com
throws ServletException, IOException {
网管下载dl.bitscn.com
//生成服务器相应的service方法 网管论坛bbs_bitsCN_com
//阻止生成的页面内容被缓存,保证每次重新生成随机验证码
网管联盟bitsCN@com
response.setHeader("Pragma", "No-cache");
网管bitscn_com
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0); 网管论坛bbs_bitsCN_com
response.setContentType("image/jpeg");
//指定图形验证码图片的大小;
网管联盟bitsCN_com
int width = 80;//宽度
int height = 20;//高度
中国网管论坛bbs.bitsCN.com
网管网www.bitscn.com
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB); 网管联盟bitsCN_com
中国网管联盟bitsCN.com
// 准备在图片中绘制内容
中国网管论坛bbs.bitsCN.com
Graphics g = image.getGraphics();
Random random = new Random(); 网管网www_bitscn_com
g.setColor(getRandColor(200, 250)); 网管u家u.bitsCN.com
g.fillRect(1, 1, width - 1, height - 1); 网管联盟bitsCN@com
g.setColor(new Color(102, 102, 102)); 中国网管联盟bitsCN.com
g.drawRect(0, 0, width - 1, height - 1); 中国网管联盟bitsCN.com
g.setFont(mFont); 中国网管论坛bbs.bitsCN.com
网管bitscn_com
|
0
|
评论加载中…