java实现获取验证码工具类

java后台Control写法     依赖Jar包下载:http://download.csdn.net/download/a1106900429/9116619

//验证码
	
	public void crimg(HttpServletRequest request, HttpServletResponse response) throws IOException {
		//发送验证码对象
		ConfigurableCaptchaService cs = new ConfigurableCaptchaService();
		
		Random random = new Random();

		//发送不同显示型式的验证码
		switch (random.nextInt(5)) {
			case 0:
				cs.setFilterFactory(new CurvesRippleFilterFactory(cs.getColorFactory()));
				break;
			case 1:
				cs.setFilterFactory(new MarbleRippleFilterFactory());
				break;
			case 2:
				cs.setFilterFactory(new DoubleRippleFilterFactory());
				break;
			case 3:
				cs.setFilterFactory(new WobbleRippleFilterFactory());
				break;
			case 4:
				cs.setFilterFactory(new DiffuseRippleFilterFactory());
				break;
		}
		HttpSession session = request.getSession(false);
		if (session == null) {
			session = request.getSession();
		}
		
		//控制不缓存
		response.setContentType("image/png");
		response.setHeader("Cache-Control", "no-cache, no-store");
		response.setHeader("Pragma", "no-cache");
		long time = System.currentTimeMillis();
		response.setDateHeader("Last-Modified", time);
		response.setDateHeader("Date", time);
		response.setDateHeader("Expires", time);
		
		//获取验证码
		String token = EncoderHelper.getChallangeAndWriteImage(cs, "png", response.getOutputStream());
		session.setAttribute("token", token);
	}

前台页面

<!--html-->
		<img src="URL" alt="" style="width: 70px;height: 40px;" id="verfyImg" onclick="getImg()" />
		/* js代码 */
		function getImg(){
				var url = 'URL?_t='+Math.random();
				$("#verfyImg").attr("src",url);
		}




猜你喜欢

转载自blog.csdn.net/a1106900429/article/details/48542821
今日推荐