javaweb servlet生成簡單驗證碼
更新時間:2020年03月11日 07:01:30 作者:煙花盛典
這篇文章主要為大家詳細介紹了javaweb servlet生成簡單驗證碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了javaweb servlet生成驗證碼的具體代碼,供大家參考,具體內容如下
package com.serv;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns={"/Servyzm"})
public class Servyzm extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO 自動生成的方法存根
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// TODO 自動生成的方法存根
Random r = new Random();
//創(chuàng)建圖片緩沖流
BufferedImage buf = new BufferedImage(70, 25, BufferedImage.TYPE_INT_RGB);
Graphics g = buf.getGraphics();//獲取圖片的畫布對象
g.fillRect(0, 0, 70,25);//從左上角開始(0,0)坐標開始填充白色,寬70,高25
g.setColor(new Color(150,150,150));//指定的是顯示的字體的顏色
String str = r.nextInt(9000)+1000+"";
g.drawString(str, 20, 20);// drawString(String str, int x, int y)str指的是輸出的文本;x,y指的是距離左上角的位置
for (int i = 0; i < 8; i++) {
int startx = r.nextInt(120);
int starty = r.nextInt(30);
g.setColor(new Color(startx, 232, starty));
g.drawLine(startx, starty, startx + 10, starty + 10);
}
ServletOutputStream out = resp.getOutputStream();// 獲取字節(jié)流
ImageIO.write(buf, "jpg", out);
}
// public static int getString(){
//
// }
}
運行截圖:

更多關于驗證碼的文章請點擊查看:《java驗證碼》
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
springboot中如何通過cors協(xié)議解決跨域問題
這篇文章主要介紹了springboot中通過cors協(xié)議解決跨域問題,cors是一個w3c標準,它允許瀏覽器(目前ie8以下還不能被支持)像我們不同源的服務器發(fā)出xmlHttpRequest請求,我們可以繼續(xù)使用ajax進行請求訪問。具體內容詳情大家跟隨腳本之家小編一起學習吧2018-05-05

