public class Demo1 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
response.setHeader("expires","-1");
response.setHeader("cache-control","no-cache");
response.setHeader("pragma","no-cache");
//以内存中构造一副图片
BufferedImage image = new BufferedImage(80,25,BufferedImage.TYPE_INT_RGB);
//取得画笔
Graphics g = image.getGraphics();
//设置字体大小和颜色
g.setColor(Color.YELLOW);
g.setFont(new Font("黑体",Font.BOLD,22));
//在图片中,画一个字符串"1A2B"
g.drawString(getString(),20,20);
//将内存中的图片以JPG格式输出到浏览器
ImageIO.write(image,"JPG",response.getOutputStream());
}
//产生一个随机字符串
private String getString(){
String str = "";
String numberAndLetter="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
int length = numberAndLetter.length();
for(int i=1;i<=4;i++){
while(true){
Random random = new Random();
int index = random.nextInt(length);
String value = numberAndLetter.substring(index,index+1);
if(value.matches("[0-9A-Za-z]")){
str += value;
break;
}
}
}
return str;
}
}
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
response.setHeader("expires","-1");
response.setHeader("cache-control","no-cache");
response.setHeader("pragma","no-cache");
//以内存中构造一副图片
BufferedImage image = new BufferedImage(80,25,BufferedImage.TYPE_INT_RGB);
//取得画笔
Graphics g = image.getGraphics();
//设置字体大小和颜色
g.setColor(Color.YELLOW);
g.setFont(new Font("黑体",Font.BOLD,22));
//在图片中,画一个字符串"1A2B"
g.drawString(getString(),20,20);
//将内存中的图片以JPG格式输出到浏览器
ImageIO.write(image,"JPG",response.getOutputStream());
}
//产生一个随机字符串
private String getString(){
String str = "";
String numberAndLetter="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
int length = numberAndLetter.length();
for(int i=1;i<=4;i++){
while(true){
Random random = new Random();
int index = random.nextInt(length);
String value = numberAndLetter.substring(index,index+1);
if(value.matches("[0-9A-Za-z]")){
str += value;
break;
}
}
}
return str;
}
}