`
qxmcool
  • 浏览: 90837 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

jsp过滤器(验证码)

    博客分类:
  • jsp
阅读更多
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<filter>
<filter-name>TestFilter</filter-name>
<filter-class>filter.TestFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TestFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>img</servlet-name>
<servlet-class>filter.TestImg</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>img</servlet-name>
<url-pattern>/imgCode</url-pattern>
</servlet-mapping>
</web-app>

package filter;

import java.io.*;
import java.util.*;
import com.sun.image.codec.jpeg.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.awt.*;
import java.awt.image.*;

/**
* Title: getImg.java Description: 这个class主要实现随机生成一个4位数的验证码,并写入session,
*/

public class TestImg extends HttpServlet {

private Font mFont = new Font("宋体", Font.PLAIN, 12);// 设置字体

// 处理post
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

doGet(request, response);
}

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// 取得一个1000-9999的随机数
String s = "";
int intCount = 0;
intCount = (new Random()).nextInt(9999);//    
if (intCount < 1000)
intCount += 1000;
s = intCount + "";
// 对session付值。
HttpSession session = request.getSession(true);
session.setAttribute("getImg", s);
System.out.println(session.getAttribute("getImg"));
response.setContentType("image/gif");
ServletOutputStream out = response.getOutputStream();
BufferedImage image = new BufferedImage(35, 14,
BufferedImage.TYPE_INT_RGB);
Graphics gra = image.getGraphics();
// 设置背景色
gra.setColor(Color.yellow);
gra.fillRect(1, 1, 33, 12);
// 设置字体色
gra.setColor(Color.black);
gra.setFont(mFont);
// 输出数字
char c;
for (int i = 0; i < 4; i++) {
c = s.charAt(i);
gra.drawString(c + "", i * 7 + 4, 11); // 7为宽度,11为上下高度位置
}
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
}
}


package filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class TestFilter implements Filter{

public void destroy() {

}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
HttpServletResponse rep = (HttpServletResponse)response;
System.out.println(req.getRequestURI());

rep.setHeader("Pragma","No-cache");
rep.setHeader("Cache-Control","no-cache");
rep.setDateHeader("Expires", 0);
chain.doFilter(req, rep);
}

public void init(FilterConfig arg0) throws ServletException {

}
}

分享到:
评论

相关推荐

    JavaWeb13-过滤器与监听器.rar

    JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar

    JavaWeb11-图片验证码.rar

    JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar

    JSP实用技巧集合,jsp编程的一些小技巧总结

    80. 使用过滤器设置请求编码? 81. JSP或Servlet调用DLL? 82. 在JSP中包含Applet(时钟)? 83. 在Applet中显示一个html页面? 84. 使session强制失效85. iFreme编辑框使用? 86. Applet与Servlet的通讯? 87. JSP表格直接...

    jsp编程技巧集锦

    使用过滤器设置请求编码? 81. JSP或Servlet调用DLL? 82. 在JSP中包含Applet(时钟)? 83. 在Applet中显示一个html页面? 84. 使session强制失效85. iFreme编辑框使用? 86. Applet与Servlet的通讯? ...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...

    JspRun!社区论坛系统 v6.0 bulid 090424 GBK 安装版.rar

    2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...

    JspRun!社区论坛系统 v6.0 bulid 090423 GBK 源码版.rar

    2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...

    JSP学习之Java Web中的安全控制实例详解

    ④ 使用过滤器对权限进行验证; ⑤ 能够对文件的局部内容进行验证; ⑥ 掌握安全验证码的基本实现方式; ⑦ 通过异常处理增强安全性。 二、主要内容: ① 通过修改前面的登录功能,分别对管理员和普通用户的登录进行...

    jsp与servlet用户管理系统.zip

    jsp+servlet+mysql编写的用户管理系统,适合web学习,里面有连接本地数据库,数据库连接池,验证码,表单查询,过滤器敏感词汇,用户的CRUD还有分页查询,多选删除,相关的jar包都在其中直接解压即可运行等,也可私...

    javaweb教程-java中级资料(ppt+txt).zip

    课件总共有18个章节 ...第二节 CSS 知识 第三节 JavaScript知识 第四节 Mysql知识 第五节 JDBC知识 第六节 Web开发模型 第七节 Servlet知识 ...第十六节 过滤器 第十七节 文件上传下载以及验证码 第十八节 JSP分页

    《Java-Web应用开发基础》教学课件08课程设计实例.pptx

    4.Servlet过滤器设计 设计两个Servlet过滤器:一个用于防止中文数据乱码,另一个用于防止未登录用户访问网站资源。 《Java-Web应用开发基础》教学课件08课程设计实例全文共73页,当前为第10页。 8.3设 计 思 路 ...

    Javaweb做的bbs论坛

    适合新手参考 javaweb 的 jsp+Servlet写出来的一个论坛 比较综合 里面有cookie 有过滤器 有验证码等

    JspRun!社区论坛系统 v6.0.0 build 20110516 GBK 源码版.zip

    7、 修复了:编辑器在部分浏览器下 JspRun!代码模式和所见即所得模式无法切换的问题。 8、 修改了:编辑用户组时,用户组显示的顺序不正确的问题。 9、 修改了:论坛编辑主题帖时,标题为空的问题 10、修复了:...

    JspRun!社区论坛系统 v6.0.0 build 20110516 UTF-8 安装版.zip

    7、 修复了:编辑器在部分浏览器下 JspRun!代码模式和所见即所得模式无法切换的问题。 8、 修改了:编辑用户组时,用户组显示的顺序不正确的问题。 9、 修改了:论坛编辑主题帖时,标题为空的问题 10、修复了:...

    JavaWeb09-EL与JSTL.rar

    JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar

    JavaWeb07-javaWeb模式.rar

    JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar

    JavaWeb03-会话跟踪cookie与session.rar

    JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar

Global site tag (gtag.js) - Google Analytics