MD5+ENUM DEMO
来源:互联网 发布:小米盒子看网络电视吗 编辑:程序博客网 时间:2024/05/14 02:47
package com.example.md5;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.HashMap;
/**
* 模拟md5数字加密入库,取出加密数字
* @author zcwfeng
* 2013-11-19
*/
public class Md5Demo {
enum MYDEMO {
ZERO(0), ONE(1), TWO(2), THREE(3), FOUR(4), FIVE(5), SIX(6), SEVEN(7), EIGHT(
8), NINE(9);
private int index;
private String md5Idx;
MYDEMO(int idx) {
this.index = idx;
this.md5Idx = Md5(String.valueOf(idx));
}
public int getIndex(int idx) {
return index;
}
public int getValueIdx() {
return index;
}
}
public static void demo() {
System.out.println(MYDEMO.ZERO.md5Idx);
System.out.println(MYDEMO.ONE.md5Idx);
System.out.println(MYDEMO.TWO.md5Idx);
System.out.println(MYDEMO.THREE.md5Idx);
System.out.println(MYDEMO.FOUR.md5Idx);
System.out.println(MYDEMO.FIVE.md5Idx);
System.out.println(MYDEMO.SIX.md5Idx);
System.out.println(MYDEMO.SEVEN.md5Idx);
System.out.println(MYDEMO.EIGHT.md5Idx);
System.out.println(MYDEMO.NINE.md5Idx);
}
public static void main(String[] args) {
// System.out.println(Md5("0"));
// demo();
System.out.println(getMyMd5Num(MYDEMO.TWO.md5Idx));
}
public static int getMyMd5Num(String md5Str) {
HashMap map = new HashMap();
map.put(MYDEMO.ZERO.md5Idx, 0);
map.put(MYDEMO.ONE.md5Idx, 1);
map.put(MYDEMO.TWO.md5Idx, 2);
map.put(MYDEMO.THREE.md5Idx, 3);
map.put(MYDEMO.FOUR.md5Idx, 4);
map.put(MYDEMO.FIVE.md5Idx, 5);
map.put(MYDEMO.SIX.md5Idx, 6);
map.put(MYDEMO.SEVEN.md5Idx, 7);
map.put(MYDEMO.EIGHT.md5Idx, 8);
map.put(MYDEMO.NINE.md5Idx, 9);
return (Integer) map.get(md5Str);
}
private static String Md5(String plainText) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(plainText.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
// System.out.println("result: " + buf.toString());// 32位的加密
//
// System.out.println("result: " + buf.toString().substring(8,
// 24));// 16位的加密
return buf.toString();
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.HashMap;
/**
* 模拟md5数字加密入库,取出加密数字
* @author zcwfeng
* 2013-11-19
*/
public class Md5Demo {
enum MYDEMO {
ZERO(0), ONE(1), TWO(2), THREE(3), FOUR(4), FIVE(5), SIX(6), SEVEN(7), EIGHT(
8), NINE(9);
private int index;
private String md5Idx;
MYDEMO(int idx) {
this.index = idx;
this.md5Idx = Md5(String.valueOf(idx));
}
public int getIndex(int idx) {
return index;
}
public int getValueIdx() {
return index;
}
}
public static void demo() {
System.out.println(MYDEMO.ZERO.md5Idx);
System.out.println(MYDEMO.ONE.md5Idx);
System.out.println(MYDEMO.TWO.md5Idx);
System.out.println(MYDEMO.THREE.md5Idx);
System.out.println(MYDEMO.FOUR.md5Idx);
System.out.println(MYDEMO.FIVE.md5Idx);
System.out.println(MYDEMO.SIX.md5Idx);
System.out.println(MYDEMO.SEVEN.md5Idx);
System.out.println(MYDEMO.EIGHT.md5Idx);
System.out.println(MYDEMO.NINE.md5Idx);
}
public static void main(String[] args) {
// System.out.println(Md5("0"));
// demo();
System.out.println(getMyMd5Num(MYDEMO.TWO.md5Idx));
}
public static int getMyMd5Num(String md5Str) {
HashMap map = new HashMap();
map.put(MYDEMO.ZERO.md5Idx, 0);
map.put(MYDEMO.ONE.md5Idx, 1);
map.put(MYDEMO.TWO.md5Idx, 2);
map.put(MYDEMO.THREE.md5Idx, 3);
map.put(MYDEMO.FOUR.md5Idx, 4);
map.put(MYDEMO.FIVE.md5Idx, 5);
map.put(MYDEMO.SIX.md5Idx, 6);
map.put(MYDEMO.SEVEN.md5Idx, 7);
map.put(MYDEMO.EIGHT.md5Idx, 8);
map.put(MYDEMO.NINE.md5Idx, 9);
return (Integer) map.get(md5Str);
}
private static String Md5(String plainText) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(plainText.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
// System.out.println("result: " + buf.toString());// 32位的加密
//
// System.out.println("result: " + buf.toString().substring(8,
// 24));// 16位的加密
return buf.toString();
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
- MD5+ENUM DEMO
- Enum使用demo
- Java annotation enum Demo
- md5加密小demo
- MD5 加密demo
- java md5加密demo
- 简单的Enum类型Demo
- MD5 DEMO V1.0(转载)
- java中MD5加密Demo
- java中MD5加密Demo
- java中MD5加密Demo
- java中MD5加密Demo .
- 简单的MD5加密demo
- java自带MD5加密Demo
- 使用MD5加密的登陆demo
- MD5加密(java+数据库)demo
- Enum枚举值获取及List的使用Demo
- enum
- 算法导论 5.3-3
- WinCE 6.0下的编译选项-“Advanced Build Commands”
- Objective-C——消息、Category和Protocol
- hdu 2710 Max Factor
- ubuntu12.04samba服务器配置
- MD5+ENUM DEMO
- C#获取网页源码
- 使用Gradle快速构建Java项目
- shell 的cut 命令用法
- 黑马程序员_java编程基础第3天1-5 循环结构while;do while;for
- 小思考
- 18.C++构造函数的重载
- memcached 高可用工具 memcached-ha
- PE文件详解------PE文件结构剖析