无聊回顾一下Servlet,实现验证码。
其中的java文件部分代码:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//通知浏览器不要缓存
resp.setHeader("Expires", "-1");
resp.setHeader("Cache-Control", "no-cache");
resp.setHeader("Pragma", "no-cache");
int width = 120;
int height = 25;
// 创建一副内存图像:BufferedImage
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
//得到属于该图片的画笔:Graphics
Graphics g = image.getGraphics();
//画边框
g.setColor(Color.BLUE);
g.drawRect(0, 0, width, height);
//填充背景色
g.setColor(Color.YELLOW);
g.fillRect(1, 1, width-2, height-2);
//画干扰线
g.setColor(Color.GRAY);
Random r = new Random();
int value = Integer.parseInt(this.getServletConfig().getInitParameter("line"));
for(int i = 0;i
其中的jsp页面部分代码:
<script type = "text/javascript">
function toRefresh(){
document.location.href="index.jsp";
}
</script>
运行结果:
另外刷新的一个关键代码是:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO Auto-generated method stub
resp.setContentType("text/html;charset=utf-8");
resp.setHeader("Refresh", "2;URL=/Servlet/index.html");
PrintWriter out = resp.getWriter();
out.write("登录成功!!!两秒后跳转页面。。。。。。");
}