ession.setAttribute("checkCode", sRand);
g.dispose();//图像生效
//禁止图像缓存
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
response.setContentType("image/jpeg");
//创建二进制的输出流
ServletOutputStream sos=response.getOutputStream();
// 将图像输出到Servlet输出流中。
ImageIO.write(image, "jpeg", sos);
sos.flush();
sos.close();
}
public Color getRandColor(int lower,int upper){
Random random = new Random();
if(upper>255)
upper=255;
if(upper<1)
upper=1;
if(lower<1)
lower=1;
if(lower>255)
lower=255;
int r=lower+random.nextInt(upper-lower);
int g=lower+random.nextInt(upper-lower);
int b=lower+random.nextInt(upper-lower);
return new Color(r,g,b);
}
}
-------------------------------------
resultServlet.java
package com.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class resultServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
String validateC = (String)request.getSession().getAttribute(
"checkCode");
String veryCode = request.getParameter("txtyzm");
PrintWriter out = response.getWriter();
if (veryCode == null || "".equals(veryCode)) {
out.print("");
} else {
if (validateC.equals(veryCode)) {
out.
print("");
} else {
out.print("");
}
}
out.flush();
out.close();
}
}
-------------------------------------
web.xml:
xmlns="java.sun/xml/ns/j2ee"
xmlns:xsi="w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="java.sun/xml/ns/j2ee
java.sun/xml/ns/j2ee/web-app_2_4.xsd">
ImageServlet
com.servlet.ImageServlet
resultServlet
com.servlet.resultServlet
ImageServlet