jsp mengimplementasikan kode verifikasi grafis
Penulis:Eve Cole
Waktu Pembaruan:2009-07-02 17:08:30
metode panggilan
<img src=" http://...../getImg ">
Prinsipnya adalah menghasilkan 4 digit angka 1000-9999 secara acak di servlet
Kemudian tulis nomor ini ke dalam sesi
Keluarkan gambar dengan empat angka tertulis di atasnya
Di sisi server, berdasarkan nomor yang dimasukkan oleh pengguna dan
Perbandingan nilai dalam sesi.
paket com.schoolwx.util;
import java.io.*;
import java.util.*;
import com.sun.image.codec.jpeg.*;
import javax.servlet.*;
impor javax.servlet.http.*;
import java.awt.*;
import java.awt.image.*;
/**
* Judul: getImg.java
* Deskripsi: Kelas ini terutama mengimplementasikan pembuatan kode verifikasi 4 digit secara acak dan menuliskannya ke dalam sesi.
* Hak Cipta: Hak Cipta (c) 2003
* Perusahaan: Perangkat Lunak Blue Star
* @penulis elang
* @versi 1.1
*/
kelas publik getImg memperluas HttpServlet {
private Font mFont=Font baru("宋体", Font.PLAIN,12);//Setel font
//proses posting
public void doPost (permintaan HttpServletRequest, respons HttpServletResponse)
melempar ServletException,IOException {
doGet(permintaan,tanggapan);
}
public void doGet (permintaan HttpServletRequest, respons HttpServletResponse)
melempar ServletException,IOException {
//Dapatkan nomor acak dari 1000-9999
String s="";
int intHitungan=0;
intCount=(Acak baru()).nextInt(9999);//
if(intHitung<1000)intHitung+=1000;
s=intHitungan+"";
//Bayar nilai ke sesi.
Sesi HttpSession=request.getSession (benar);
sesi.setAttribute("getImg",s);
respon.setContentType("gambar/gif");
ServletOutputStream keluar=response.getOutputStream();
Gambar BufferedImage=BufferedImage baru(35,14,BufferedImage.TYPE_INT_RGB);
Graphicsgra=gambar.getGraphics();
//Mengatur warna latar belakang
gra.setColor(Warna.kuning);
gra.fillRect(1,1,33,12);
//Mengatur warna font
gra.setColor(Warna.hitam);
gra.setFont(mFont);
//Nomor keluaran
karakter c;
untuk(int i=0;i<4;i++) {
c=s.charAt(i);
gra.drawString(c+"",i*7+4,11); //7 adalah lebarnya, 11 adalah posisi tinggi atas dan bawah
}
Encoder JPEGImageEncoder=JPEGCodec.createJPEGEncoder(keluar);
encoder.encode(gambar);
keluar.tutup();
}
}
http://blog.csdn.net/lixiaolong_blog/archive/2007/01/25/1493417.aspx