因为这次只要保存,所以比较简单,主要代码用的上一期的。
数据库用的是Mysql;
直接上代码:
public class MD5Util {

	public static void main(String[] args) {
		final int ACTIVATECODENUM = 200;
		Random random = new Random();
		String candicateCode = "abcdefghijklmnopqrstuvwxyz";
		candicateCode += candicateCode.toUpperCase();
		candicateCode += "1234567890";
		for (int i = 0; i < ACTIVATECODENUM; i++) {
			String res = "";
			for (int j = 0; j < 6; j++) {
				res += candicateCode.charAt(random.nextInt(candicateCode
						.length()));
			}
			String pwd = MD5Util.getMD5(MD5Util.getMD5(res));
			boolean x = insertToMysql(pwd);
			System.out.println(pwd);
		}
	}

	private static boolean insertToMysql(String pwd) {
		int n=0;
		try {
			Class.forName("com.mysql.jdbc.Driver");
			Connection connection = DriverManager.getConnection(
					"jdbc:mysql://127.0.0.1/new2017", "root", "admin");
			String sql = "insert into checkNum(value) values(?)";
			PreparedStatement ps = connection.prepareStatement(sql);
			ps.setObject(1, pwd);
			n = ps.executeUpdate();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return n>0?true:false;
	}

	private static String byteHEX(byte ib) {
		char[] Digit = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A',
				'B', 'C', 'D', 'E', 'F' };
		char[] ob = new char[2];
		ob[0] = Digit[(ib >>> 4) & 0X0F];
		ob[1] = Digit[ib & 0X0F];
		String s = new String(ob);
		return s;
	}

	// 字符串加密
	public static String getMD5(String source) {
		MessageDigest messageDigest = null;
		try {
			messageDigest = MessageDigest.getInstance("MD5");
		} catch (NoSuchAlgorithmException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		messageDigest.update(source.getBytes());
		byte[] b = messageDigest.digest();
		StringBuffer sb = new StringBuffer();
		for (int i = 0; i < b.length; i++) {
			sb.append(byteHEX(b[i]));
		}

		// sb.setCharAt(sb.length()-1, (char)(sb.charAt(sb.length()-1)+1));
		return sb.toString();
	}
}
运行效果:(数据库中)