进制转换
2009-06-16 17:28
183 查看
很多时候在做系统 特别是在登陆的时候为了提高安全性 有必要生成验证码。。。。。。。
1.先产生验证码字符序列,将产生的验证字符画到一到图上
1.先产生验证码字符序列,将产生的验证字符画到一到图上
package com.qdys.b2b.web.action.adie; import java.io.IOException; import java.util.Map; import javax.imageio.ImageIO; import javax.servlet.http.HttpServletResponse; import org.apache.log4j.Logger; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import com.qdys.b2b.web.util.RandomCodeHelper; public class CheckCode extends ActionSupport { private static final Logger log = Logger.getLogger(CheckCode.class); private static final long serialVersionUID = 1L; // 标识是哪儿需要产生验证码(登陆、注册、添加友情链接) private String flag; public String getCode() { Map<String, Object> session = ActionContext.getContext().getSession(); HttpServletResponse response = ServletActionContext.getResponse(); response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpeg"); String code = RandomCodeHelper.getRandomCode(); log.debug("#####" + flag + ":" + code); try { ImageIO.write(RandomCodeHelper.getBufferedImage(60, 20, code), "jpeg", response.getOutputStream()); } catch (IOException e) { e.printStackTrace(); } session.put(flag, code); return null; } /** * @return the flag */ public String getFlag() { return flag; } /** * @param flag * the flag to set */ public void setFlag(String flag) { this.flag = flag; } }
相关文章推荐
- 【noj】1012 进制转换(包括非正数)
- 面试热题——进制转换(n进制转换成2进制)
- java-自定义的进制转换-可以处理缩短uuid长度的问题
- 进制转换
- 九度-题目1138:进制转换
- android NFC getId()后进制转换
- 进制转换
- 进制转换--Weird Numbers
- 九度 1138 - 大数除余 - 进制转换
- 洛谷 P1017 进制转换
- 栈实现进制转换
- Java中的进制转换
- SDUT-数据结构实验之栈一:进制转换
- 2 进制转换 | 二进制、八进制、十进制、十六进制整型常量之间的相互转换
- NOJ 1012 进制转换(十进制转换成随意进制)
- 进制转换
- 九度1138:进制转换(大数除余)
- 660. Remove 9(一种难理解的进制转换)
- 算法提高 ADV-117 进制转换
- Java实现任意进制转换