java登录的验证码
来源:互联网 发布:单机版销售软件 编辑:程序博客网 时间:2024/04/29 05:04
1、创建一个servlet取名为LoginServlet,将url mappings设置成"/servlet/LogiServlet"
2、在web.xml文件中加入
<servlet>
<servlet-name>ImageServlet</servlet-name>
<servlet-class>com.test.oa.web.login.action.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ImageServlet</servlet-name>
<url-pattern>/servlet/LoginServlet</url-pattern>
</servlet-mapping>
3、在loginservlet中做如下处理:
@WebServlet("/servlet/LoginServlet")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public LoginServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
BufferedImage img = new BufferedImage(68, 22, BufferedImage.TYPE_INT_RGB);
//得到该图片的绘图对象
Graphics g = img.getGraphics();
Random r = new Random();
Color c = new Color(200,150,225);
g.setColor(c);
//填充整个图片的颜色
g.fillRect(0, 0, 68, 22);
//向图片中输出数字和字母
StringBuffer sb = new StringBuffer();
char[] ch = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray();
int index,len = ch.length;
for (int i = 0; i < 4; i++) {
index = r.nextInt(len);
g.setColor(new Color(r.nextInt(88),r.nextInt(188),r.nextInt(225)));
g.setFont(new Font("Arial",Font.BOLD | Font.ITALIC,22));//输出的字体和大小
g.drawString("" + ch[index], (i * 15)+3, 18);//写什么数字,在图片的什么位置画
sb.append(ch[index]);
}
request.getSession().setAttribute("piccode", sb.toString());
ImageIO.write(img, "JPG", response.getOutputStream());
}
}
在jsp文件上加入
<tr><td class="left">验 证 码:</td>
<td class="right"><input type="text" id="verifycode" name="verifycode" />
<img alt="验证码" id="safecode" src="<%=request.getContextPath()%>/servlet/LoginServlet" />
</td>
</tr>
重载验证码:
//重载验证码
function reloadVerifyCode(){
var timenow = new Date().getTime();
document.getElementById("safecode").src = "<%=request.getContextPath()%>/servlet/LoginServlet?d="+timenow;
}
- java登录的验证码
- java验证码登录
- java生成登录验证码的方法
- java实现简单的登录验证码
- Java实现登录界面的验证码
- java中登录验证码的使用
- Java实现登录验证码验证
- java实现登录验证码
- JAVA生成登录验证码
- java生成登录验证码
- 关于Java登录中验证码的思考
- Java实现登录界面的验证码总结
- java实现登录页面的验证码功能
- java图形登录界面验证码的实现
- servlet简单的验证码登录验证
- 登录的验证码设计
- 登录页的验证码
- 登录时的验证码
- C# 操作PDFCreator 引发 检索COM类工厂中CLSID为{}的组件时失败...
- 第四次国产手机革命是福是祸(转)
- 分页类常见错误
- vtune 使用pmc 时间的配置
- request.getParameterValues与request.getParameter的区别
- java登录的验证码
- js java 转 html code
- PS技术,你在学校里十二年,也学不到这么多!
- C语言数据结构之堆栈
- [C#]实现Q+桌面登录满5小时后自动退出(QQ等级加速用)
- Oracle 内存表的使用方法总结
- 字符编码详解
- oracle sequence
- 客户端jQuery操作json