- 浏览: 1088847 次
- 性别:
- 来自: 成都
文章分类
最新评论
-
skyesx:
这是2PC实现,更常用的是一个柔性事务的实现,可以参考http ...
Spring分布式事务实现 -
ddbird:
这第一句就不严谨“分布式事务是指操作多个数据库之间的事务”,显 ...
Spring分布式事务实现 -
呵呵6666:
基于互联网支付系统的微服务架构分布式事务解决方案http:// ...
Spring分布式事务实现 -
小黄牛:
写得不错,交流群:472213887
Spring分布式事务实现 -
jiaoqf321456:
这明明是用的apache的压缩,给ant.jar有半毛钱关系吗 ...
使用ant.jar进行文件zip压缩
<一>、Java生成验证码图片
1.Servlet生成验证码图片
2.配置
3.调用
<二>、Checked vs UnChecked Exception
任何的异常都是Throwable类,并且在它之下包含两个字类Error / Exception,而Error仅在当在Java虚拟机中发生动态连接失败或其它的定位失败的时候,Java虚拟机抛出一个Error对象。典型的简易程序不捕捉或抛出Errors对象。
Exception中比较重要的就是RuntimeException(运行时异常)-可能在执行方法期间抛出但未被捕捉的 RuntimeException 的任何子类都无需在 throws 子句中进行声明。
除了Error与RuntimeException,其他剩下的异常都是你需要关心的,而这些异常类统称为Checked Exception,至于Error与RuntimeException则被统称为Unchecked Exception。
1.Servlet生成验证码图片
package com.logcd.servlet; import java.awt.Color; import java.awt.Font; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.util.Random; import javax.imageio.ImageIO; import javax.servlet.*; import java.io.*; import javax.servlet.http.*; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @SuppressWarnings("serial") public class RandomCode extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 验证码图片的宽度。 int width = 70; // 验证码图片的高度。 int height = 30; BufferedImage buffImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics2D g = buffImg.createGraphics(); // 创建一个随机数生成器类。 Random random = new Random(); // 设定图像背景色(因为是做背景,所以偏淡) g.setColor(getRandColor(200, 250)); g.fillRect(0, 0, width, height); // 创建字体,字体的大小应该根据图片的高度来定。 Font font = new Font("Times New Roman", Font.HANGING_BASELINE, 28); // 设置字体。 g.setFont(font); // 画边框。 g.setColor(Color.BLACK); g.drawRect(0, 0, width - 1, height - 1); // 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到。 //g.setColor(Color.GRAY); g.setColor(getRandColor(160,200)); for (int i = 0; i < 155; i++) { int x = random.nextInt(width); int y = random.nextInt(height); int xl = random.nextInt(12); int yl = random.nextInt(12); g.drawLine(x, y, x + xl, y + yl); } // randomCode用于保存随机产生的验证码,以便用户登录后进行验证。 StringBuffer randomCode = new StringBuffer(); // 设置默认生成4个验证码 int length = 4; // 设置备选验证码:包括"a-z"和数字"0-9" String base = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; int size = base.length(); // 随机产生4位数字的验证码。 for (int i = 0; i < length; i++) { // 得到随机产生的验证码数字。 int start = random.nextInt(size); String strRand = base.substring(start, start + 1); // 用随机产生的颜色将验证码绘制到图像中。 // 生成随机颜色(因为是做前景,所以偏深) //g.setColor(getRandColor(1, 100)); //调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成 g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110))); g.drawString(strRand, 15 * i + 6, 24); // 将产生的四个随机数组合在一起。 randomCode.append(strRand); } // 将四位数字的验证码保存到Session中。 HttpSession session = request.getSession(); session.setAttribute("rand", randomCode.toString()); //图象生效 g.dispose(); // 禁止图像缓存。 response.setHeader("Pragma", "no-cache"); response.setHeader("Cache-Control", "no-cache"); response.setDateHeader("Expires", 0); response.setContentType("image/jpeg"); // 将图像输出到Servlet输出流中。 ServletOutputStream sos = response.getOutputStream(); ImageIO.write(buffImg, "jpeg", sos); sos.flush(); sos.close(); } Color getRandColor(int fc, int bc) {// 给定范围获得随机颜色 Random random = new Random(); if (fc > 255) fc = 255; if (bc > 255) bc = 255; int r = fc + random.nextInt(bc - fc); int g = fc + random.nextInt(bc - fc); int b = fc + random.nextInt(bc - fc); return new Color(r, g, b); } }
2.配置
<servlet> <servlet-name>RandomCode</servlet-name> <servlet-class>com.logcd.servlet.RandomCode</servlet-class> </servlet> <servlet-mapping> <servlet-name>RandomCode</servlet-name> <url-pattern>/randomCode</url-pattern> </servlet-mapping>
3.调用
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <meta http-equiv="pragma" content="no-cache"/> <meta http-equiv="cache-control" content="no-cache"/> <meta http-equiv="expires" content="0"/> <iframe src="http://127.0.0.1/js_test/randomCode" id="codeFrame" name="codeFrame" frameborder="no" border="0" marginwidth="0" marginheight="0" scrolling="no" allowtransparency="yes" height="35" width="102"></iframe> <a href="javascript:void(0);" onclick="refreshCode();">看不清,换一张</a> <br> <span id="codeImg"><img border=0 src="randomCode"></span> <a href="javascript:void(0);" onclick="reloadCode()">看不清,再换一张</a>
function $(id){ return document.getElementById(id); } /**刷新iframe**/ function refreshCode(){ window.frames["codeFrame"].location.reload(); } /**替换图片**/ function reloadCode(){ $("codeImg").innerHTML = "<img border=0 src='randomCode'>"; }
<二>、Checked vs UnChecked Exception
任何的异常都是Throwable类,并且在它之下包含两个字类Error / Exception,而Error仅在当在Java虚拟机中发生动态连接失败或其它的定位失败的时候,Java虚拟机抛出一个Error对象。典型的简易程序不捕捉或抛出Errors对象。
Exception中比较重要的就是RuntimeException(运行时异常)-可能在执行方法期间抛出但未被捕捉的 RuntimeException 的任何子类都无需在 throws 子句中进行声明。
除了Error与RuntimeException,其他剩下的异常都是你需要关心的,而这些异常类统称为Checked Exception,至于Error与RuntimeException则被统称为Unchecked Exception。
- Checked exception: 这类异常都是Exception的子类 。异常的向上抛出机制进行处理,假如子类可能产生A异常,那么在父类中也必须throws A异常。可能导致的问题:代码效率低,耦合度过高。C#中就没有使用这种异常机制。
- Unchecked exception: 这类异常都是RuntimeException的子类,虽然RuntimeException同样也是Exception的子类,但是它们是非凡的,它们不能通过client code来试图解决,所以称为Unchecked exception。
发表评论
-
使用zxing.jar生成二维码
2015-10-15 13:52 01、ZxingCodeUtils /** * 使用Zx ... -
Java生成条形码与二维码
2015-09-29 11:02 0一、一维条形码 /** * 利用jbarcode.ja ... -
将html特殊码( &#x)转换成字符
2015-06-09 11:54 0public static void main(St ... -
Java多线程编程
2013-10-16 13:45 0一、线程安全的延迟初始化 1、基于volatile的双重检查锁 ... -
Java常用方法整理
2013-06-13 16:00 01、判断是否为中文字符 /** * 判断是否为中文 ... -
使用servicemix实现FTP连接池
2013-06-13 13:17 0一、配置文件 <?xml version=" ... -
嵌入式运行HttpServer
2015-06-30 13:14 1680一、嵌入式运行Jetty并提供上传文件功能 1、定义处理请求的 ... -
使用Quartz执行定时任务
2012-05-24 11:00 0一、在application中运用 (1)定义任务 pac ... -
Java内存泄漏分析与解决方案
2012-03-18 13:49 0作为Internet最流行的编程语言之一,Java现正非常 ... -
java访问FtpSever
2011-10-09 15:18 0使用apache common-net包来实现。 ... -
JNI(Java Native Interface)的使用
2015-06-30 13:12 3209Java JNI是Java Native Interf ... -
Java Regular Expressions Syntax
2009-07-22 20:54 3002一、正则表达式语法 1. ... -
jsp custom taglib
2009-07-10 12:20 01.java文件 public class Repeate ... -
java filter
2009-07-10 12:13 17264过滤器Filter也具有生命周期:init()-> ... -
HTTP 头部详细解释
2009-07-09 11:46 01. Accept:告诉WEB服务器 ... -
JavaMail读发邮件
2009-07-07 14:04 6215一、基本概念: SMTP(Simple Mail Tra ... -
jsp统计在线人数和在线注册人数
2009-05-31 12:50 9132一、统计在线人数 1.监 ... -
Java TimeZone
2009-04-15 16:32 28856protected static Format form ... -
JPA是什么
2009-03-28 18:59 2385JPA全称为Java Persiste ... -
用dom4j读写xml
2009-03-18 21:57 3495一、例子 public class XML ...
相关推荐
NULL 博文链接:https://caerun.iteye.com/blog/726904
主要介绍了通过实例了解checked和unchecked异常,Java异常分为两种类型,checked异常和unchecked异常,另一种叫法是异常和错误。下面小编就带大家来一起学习一下吧
Java异常分为两种类型,checked异常和unchecked异常,另一种叫法是异常和错误。 简单地讲,checked是可以在执行过程中恢复的,而unchecked异常则是无法处理的错误。 checked异常: 表示无效,不是程序中...
主要介绍了详解Java中的checked异常和unchecked异常区别,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
主要介绍了详解Java中Checked Exception与Runtime Exception 的区别的相关资料,这里提供实例帮助大家学习理解这部分内容,需要的朋友可以参考下
Checked Exception(受检的异常)2---马克-to-win java视频
以上代码段编译没有通过,在VS2010中会有一条红色的波浪线指出这段代码有问题:”The operation overflows at compile time in checked mode”。这说明了编译器会在编译时检查数学运算是否溢出。但是编译时能检查出...
Checked Exception 和 Unchecked Exception 有什么区别? Throwable 类常用方法有哪些? try-catch-finally 如何使用? finally 中的代码一定会执行吗? 如何使用 try-with-resources 代替try-catch-finally? I/O ...
适用于:checked元素的一组纯CSS动画。 ... Radiobox.css + Checkbox.css的强大功能全部安装一次即可将dist / css / checked.min.css包含在html页面中包括dist / css / boin适用于:checked元素的纯CSS动画的微小...
WIN7 checked debug 64位版本,如果要debug版本的符号文件,请到MSDN上下载。希望这个对你有帮助。
主要介绍了C#中checked和unchecked的区别,是学习C#必须要牢固掌握的,需要的朋友可以参考下
Checked Exception(受检的异常)1---马克-to-win java视频
win2008 checked debug 64位版本,如果要debug版本的符号文件,请到MSDN上下载。希望这个对你有帮助。
所有的checked exception是从java.lang.Exception类衍生出来的,而runtime exception则是从java.lang.RuntimeException或java.lang.Error类衍生出来的。 它们的不同之处表现在两方面:机制上和逻辑上。 一...
Java中的异常分为三种类型:检查型异常(Checked Exception)、非检查型异常(Unchecked Exception)和错误(Error)。 检查型异常(Checked Exception): 这些异常在代码中必须进行显式处理,否则编译器会报错。 ...
和Java一样,python也提供了对于checked exception和unchecked exception. 对于checked exception,我们通常使用try except可以显示解决,对于unchecked 异常,其实也是提供回调或者是钩子来帮助我们处理的,我们可以在...
Model类中创建HashMap并运用基本的数学算法,Program类中调用Model类并在通过UI实现,过程中对于可能出现的checked exception利用try-catch解决。
checked 关键字用于对整型算术运算和转换显式启用溢出检查。