Java 生成验证码
java生成验证码
有很多种方式,在网上也有很多代码,但是那些生成的效果,感觉都不是特别好,所以我在他们的基础上改良了一些。
但能还可以用jmagick ,生成很多很炫的验证码。过两天研究下。先把最近改的这个发布下供朋友们参。
可以先看看样例。最近在做这个网站。大家有兴趣可以叫交流。约会360 网址: www.yuehui360.com
验证码效果可以在
约会360注册页面 http://www.yuehui360.com/register.htm 查看效果
图片效果:
代码如下:
package com.idate.util;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
/**
* @author lqinglong@yahoo.cn
* 约会360 www.yuehui360.com
*/
public class CodeHelper {
private static final CodeHelper generator = new CodeHelper();
private final String ATTRIBUTE_NAME = "code";
//图片的宽度
private final int WIDTH = 35;
//图片的高度
private final int HEIGHT = 55;
//字符串长度
private final int CODE_LENGTH = 4;
//随机字符串范围
private final String RAND_RANGE = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" ;
private final char[] CHARS = RAND_RANGE.toCharArray();
private Random random = new Random();
private CodeHelper(){
//
}
public static CodeHelper getInstance(){
return generator;
}
/**
* 生成随机字符串
* @return 随机字符串
*/
private String getRandString(){
StringBuilder sb = new StringBuilder();
for (int i = 0; i < CODE_LENGTH; i++)
sb.append(CHARS[random.nextInt(CHARS.length)]);
return sb.toString();
}
相关文档:
java去除字符串中的空格、回车、换行符、制表符
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtil {
public static void replaceBlank()
{
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
String str="I am a, I am Hello ok, \n new line ffdsa!";
System.out.p ......
URL的openConnection()方法将返回一个URLConnection对象,该对象表示应用程序和 URL 之间的通信链接。程序可以通过URLConnection实例向该URL发送请求、读取URL引用的资源。
通常创建一个和 URL 的连接,并发送请求、读取此 URL 引用的资源需要如下几个步骤:
(1)通过调用URL对象openConnection()方法来创建URLConnectio ......
问题1.
public static void append(String str){
str += " Append!";
}
public static void append(StringBuffer sBuffer){
sBuffer.append(" Append!");
}
public void test(){
String str = "Nothing";
append(str);
System.out.println(str);
StringBuffer sBuffer = new StringBuffer("Nothing" ......
Java连接mysql数据库,代码经过运行准确无误。
下面为实例---->
用数据库操纵工具(例:SQLyogEnt)操纵mysql建表,或dos下建,如下:
数据库名:scutcs
表名:student
表内容:
sno char[7] NO NULL Primary Key;
sname varchar[8] NO NULL;
sex char[2] NO NULL; ......
1. 如何得到Java应用程序的可用内存?
答:如下代码实现取得总的内存大小和可用内存大小,并打印到控制台上
public class MemoryExp {
public static void main(String[] args) {
System.out.println("Total Memory"+Runtime.getRuntime().totalMemory());
System.out.println("Free Memory ......