package com.bs.action.common;
import java.awt.Color;
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.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import com.bs.action.BasicAction;
public class VierfycodeAction extends BasicAction{
private static final long serialVersionUID = -2269414914034390741L;
private Random random;
private BufferedImage image;
private Font font;
private int distance;
public String getCheckCodeImage(String str, int show, OutputStream output) throws IOException{
random = new Random();
image = new BufferedImage(65,20,BufferedImage.TYPE_3BYTE_BGR);
font = new Font("Arial",Font.PLAIN,19);
distance = 15;
Graphics d = image.getGraphics();
d.setColor(Color.WHITE);
d.fillRect(0,0,image.getWidth(),image.getHeight());
d.setColor(new Color(random.nextInt(100)+100,random.nextInt(100)+100,random.nextInt(100)+100));
for (int i = 0; i < 10; i++) {
d.drawLine(random.nextInt(image.getWidth()),random.nextInt(image.getHeight()),random.nextInt(image.getWidth()),random.nextInt(image.getHeight()));
}
d.setColor(Color.BLACK);
d.setFont(font);
String checkCode = "";
char tmp = 0;
int x = -distance;
for (int i = 0; i < show; i++) {
tmp = str.charAt(random.nextInt(str.length()-1));
checkCode = checkCode + tmp;
x = x + distance;
d.setColor(new Color(random.nextInt(100)+50,random.nextInt(100)+50,random.nextInt(100)+50));
d.drawString(tmp+"",x,random.nextInt(image.getHeight()-(font.getSize()))+(font.getSize()));
}
d.dispose();
ImageIO.write(image,"jpeg",output);
return checkCode;
}
public String execute() throws Exception {
HttpServletResponse response = ServletActionContext.getResponse();
//ABCDEFGHJKLMNPQRSTUVWXYZ
String checkCode = getCheckCodeImage("abcdefghijklmnopqrstuvwxyz123456789",4,response.getOutputStream());
getSession().put("vierfycode", checkCode);
return SUCCESS;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
S2S2H3.zip (78个子文件)
S2S2H3
src
log4j.properties 672B
com
bs
dao
ILoginDao.java 143B
quartz
QuartzJob.java 177B
QuartzService.java 535B
QuartzJobTwo.java 215B
action
BasicAction.java 761B
common
LoginAction.java 2KB
package.properties 495B
VierfycodeAction.java 2KB
serviceImpl
AuthService.java 407B
daoImpl
LoginDaoImpl.java 728B
service
IAuthService.java 142B
commons
SetCharacterEncodingFilter.java 1KB
entity
Manager.hbm.xml 947B
Manager.sql 202B
Manager.java 757B
struts.xml 484B
quartz.xml 3KB
Struts.properties 84B
.project 1KB
WebRoot
images
layout_admin
top_bg.gif 597B
tree_BG.gif 3KB
login_bg.gif 1KB
k_bot.gif 488B
table_titleBG.gif 804B
dian_up.gif 947B
k_top.gif 484B
top_bg2.gif 452B
23.gif 96B
top_tittle.gif 7KB
left_top.gif 192B
login_tableBG.gif 544B
top_logo.gif 3KB
dian.gif 942B
Thumbs.db 19KB
k_mid.gif 126B
META-INF
MANIFEST.MF 39B
top.jsp 1KB
WEB-INF
conf
hibernate3
jdbc.properties 2KB
spring
application-Context.xml 2KB
dao-Context.xml 383B
quartz-Context.xml 6KB
service-Context.xml 380B
struts2
manager.xml 5KB
login.xml 974B
trade.xml 5KB
web.xml 2KB
classes
lib
struts2-core-2.0.6.jar 2.09MB
commons-logging-1.0.4.jar 37KB
cglib-2.1.3.jar 276KB
dom4j-1.6.1.jar 307KB
spring.jar 2.57MB
jta.jar 9KB
struts2-spring-plugin-2.0.6.jar 8KB
ehcache-1.3.0.jar 227KB
ojdbc14.jar 1.47MB
mysql-connector-java-5.0.4-bin.jar 484KB
log4j-1.2.8.jar 344KB
commons-dbcp-1.2.1.jar 105KB
asm.jar 26KB
ognl-2.6.11.jar 164KB
quartz-1.6.2.jar 436KB
commons-pool-1.2.jar 41KB
antlr-2.7.2.jar 350KB
commons-collections-3.2.jar 558KB
freemarker-2.3.8.jar 784KB
xwork-2.0.1.jar 442KB
hibernate3.jar 1.88MB
main.jsp 712B
frame.jsp 6KB
common
images
login_bg.gif 1KB
Thumbs.db 4KB
Logoff.jsp 368B
Login.jsp 2KB
vierfycode.jsp 127B
layout_admin.jsp 733B
.mymetadata 291B
.classpath 3KB
共 78 条
- 1
资源评论
- yuanyongkk5202013-01-04可以作为参考使用
- dundee14192014-06-23不错的代码分享........可以参考参考....
David_0512
- 粉丝: 31
- 资源: 91
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功