package cn.com;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import javax.imageio.ImageIO;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class ResponseDemoRandom extends HttpServlet { private static final long serialVersionUID = 1L; public static final int WIDTH=120; public static final int HEIGHT=25; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { BufferedImage image=new BufferedImage(WIDTH,HEIGHT,BufferedImage.TYPE_INT_RGB); Graphics g=image.getGraphics(); //设置背景色 setBackGround(g); //设置边框 setBorder(g); //画干扰线 drawRandomLine(g); //写随机数 drawRandomNum((Graphics2D)g); response.setContentType("image/jpeg"); response.setDateHeader("expries", -1); response.setHeader("Cache-Control", "no-control"); response.setHeader("prama", "no-control"); ImageIO.write(image, "jpg", response.getOutputStream()); } private void drawRandomNum(Graphics2D g) { g.setColor(Color.PINK); g.setFont(new Font("宋体",Font.BOLD,20)); int x=10; for(int i=0;i<4;i++) { int degree=new Random().nextInt()%30; int num=new Random().nextInt(9); String str=num+""; g.rotate(degree*Math.PI/180, x, 20); g.drawString(str, x, 20); g.rotate(-degree*Math.PI/180, x, 20); x+=30; } } private void drawRandomLine(Graphics g) { g.setColor(Color.blue); for(int i=0;i<5;i++) { int x1=new Random().nextInt(WIDTH-4)+2; int y1=new Random().nextInt(HEIGHT-4)+2; int x2=new Random().nextInt(WIDTH-2); int y2=new Random().nextInt(HEIGHT-2); g.drawLine(x1, y1, x2, y2); } } private void setBorder(Graphics g) { g.setColor(Color.GREEN); g.drawRect(1, 1, WIDTH-2, HEIGHT-2); } private void setBackGround(Graphics g) { g.setColor(Color.gray); g.fillRect(0, 0, WIDTH, HEIGHT); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request,response); }}
详细解决方案
Java EE登陆界眼生成随机数防止恶意注册或者登录
热度:42 发布时间:2016-04-21 22:21:48.0
相关解决方案
- java 乱码 汉字是 ? 如何转换成汉字
- java web 登录次数限制,该如何解决
- java 工商银行网银支付 B2B的 都亟需什么,需要注意什么
- Java Applet程序从JDK6升级到7时遇到的有关问题
- java web 视频相干
- 请教一个关于链接后缀的有关问题(java web 应用)
- java 系统单点登录解决方案
- java.lang.NumberFormatException: For input string: "id"该如何处理
- java.lang.NoSuchMethodException: setId([Ljava.lang.String;)解决方法
- java 获取客户端IP解决办法
- JAVA 后台怎么获得前台页面FCKedit编辑器中的内容以及内容的样式
- java 正则化匹配有关问题
- java web 受阻
- java.lang.IllegalStateException: No output folder,该怎么解决
- java.lang.NoSuchMethodError: org.springframework.util.ReflectionUtils.makeAccess,该如何解决
- java 乱码有关问题 急求大神
- java EE错误如何解决阿,都是过了,没有能解决的!
- java 工程打包有关问题 多谢各位大神!多谢
- JAVA WEB导航条,该怎么处理
- java.sql.SQLException: Access denied for user 'root'@'localhost' (using password,该如何处理
- java 中Node 有关问题
- 关于 java 引述传递和值传递,你的知否
- 吐了,java Timer 终止不了。
- Java Web 学习中有关问题,请高手指教
- java web中的url地址小疑点。
- java web开发解决办法
- java.lang.NullPointerException解决方法
- 关于 java cast 有关问题,你明白不
- java ftp 下传和上载乱码有关问题
- java web项目上的一些文件