《百度云平台验证码实现》-----javaweb

package com.fenghuo.controller;


import java.io.BufferedOutputStream;
import java.io.IOException;
import java.util.Map;


import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;


import com.baidu.bae.api.factory.BaeFactory;
import com.baidu.bae.api.image.Annotate;
import com.baidu.bae.api.image.BaeImageService;
import com.baidu.bae.api.image.Image;
import com.baidu.bae.api.image.VCode;


public class IdentifyingCode extends HttpServlet {


/**

*/
private static final long serialVersionUID = -6642061549903457669L;


public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
//获取服务类对象
BaeImageService service = BaeFactory.getBaeImageService();
VCode vc = new VCode();
vc.setLen(4);
// 获取验证码信息
Map<String,String> data = service.generateVCode(vc);

HttpSession session = request.getSession();
session.setAttribute("imgurl", data.get("imgurl"));
session.setAttribute("secret", data.get("secret"));
         
          String url = data.get("imgurl");
//创建图片对象
Image image = new Image(url);
//创建文字水印功能对象
          String text = "wxfjava";
Annotate annotate = new Annotate(text);
annotate.setFont(0,12,"D4E7F3");
annotate.setOpacity(0.5f);


          annotate.setPos(55,15);
    //调用文字水印服务
byte[] bs = service.applyAnnotate(image, annotate);
BufferedOutputStream bos = new BufferedOutputStream(
response.getOutputStream());
bos.write(bs, 0, bs.length);

if (bos != null)
bos.close();
bos.flush();
} catch (Exception e) {
}

}


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {


doGet(request, response);
}


}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值