`
- 浏览:
90837 次
- 性别:
- 来自:
石家庄
-
<?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 {
}
}
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
80. 使用过滤器设置请求编码? 81. JSP或Servlet调用DLL? 82. 在JSP中包含Applet(时钟)? 83. 在Applet中显示一个html页面? 84. 使session强制失效85. iFreme编辑框使用? 86. Applet与Servlet的通讯? 87. JSP表格直接...
使用过滤器设置请求编码? 81. JSP或Servlet调用DLL? 82. 在JSP中包含Applet(时钟)? 83. 在Applet中显示一个html页面? 84. 使session强制失效85. iFreme编辑框使用? 86. Applet与Servlet的通讯? ...
20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...
20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...
20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...
2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...
20.5 对用户进行统一验证的过滤器 594 20.6 对请求和响应数据进行替换的 20.6 过滤器 600 20.7 小结 609 第21章 中文乱码问题与国际化 610 21.1 中文乱码问题产生的由来 610 21.1.1 常用字符集 610 21.1.2 对...
2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...
④ 使用过滤器对权限进行验证; ⑤ 能够对文件的局部内容进行验证; ⑥ 掌握安全验证码的基本实现方式; ⑦ 通过异常处理增强安全性。 二、主要内容: ① 通过修改前面的登录功能,分别对管理员和普通用户的登录进行...
jsp+servlet+mysql编写的用户管理系统,适合web学习,里面有连接本地数据库,数据库连接池,验证码,表单查询,过滤器敏感词汇,用户的CRUD还有分页查询,多选删除,相关的jar包都在其中直接解压即可运行等,也可私...
课件总共有18个章节 ...第二节 CSS 知识 第三节 JavaScript知识 第四节 Mysql知识 第五节 JDBC知识 第六节 Web开发模型 第七节 Servlet知识 ...第十六节 过滤器 第十七节 文件上传下载以及验证码 第十八节 JSP分页
4.Servlet过滤器设计 设计两个Servlet过滤器:一个用于防止中文数据乱码,另一个用于防止未登录用户访问网站资源。 《Java-Web应用开发基础》教学课件08课程设计实例全文共73页,当前为第10页。 8.3设 计 思 路 ...
适合新手参考 javaweb 的 jsp+Servlet写出来的一个论坛 比较综合 里面有cookie 有过滤器 有验证码等
7、 修复了:编辑器在部分浏览器下 JspRun!代码模式和所见即所得模式无法切换的问题。 8、 修改了:编辑用户组时,用户组显示的顺序不正确的问题。 9、 修改了:论坛编辑主题帖时,标题为空的问题 10、修复了:...
7、 修复了:编辑器在部分浏览器下 JspRun!代码模式和所见即所得模式无法切换的问题。 8、 修改了:编辑用户组时,用户组显示的顺序不正确的问题。 9、 修改了:论坛编辑主题帖时,标题为空的问题 10、修复了:...
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar
JSP+servlet+javabean学习 里面有PDF文件对该章节的详细讲解,培训老师才讲的到的,非常详细......资源内容如下: JavaWeb02-request与response.rar JavaWeb03-会话跟踪cookie与...JavaWeb13-过滤器与监听器.rar