guava:计算hash(md5,sha256,crc...)真是方便

今天找到了guava计算md5的工具类,用起来真是很方便,返回结果可以用toString()转为String,也可以用asBytes()转为字节数组。
生成sha256,sha512等也是同样的用法,只要在Hashing类调用对应的方法返回HashFunction对象就可以,很方便。
示例代码如下:

package net.gdface.facelog.client;

import static org.junit.Assert.*;

import org.junit.Test;

import com.google.common.hash.Hashing;


public class HashTest {

    @Test
    public void test() {
        String input = "hello, world";
        // 计算MD5
        System.out.println(Hashing.md5().hashBytes(input.getBytes()).toString());
        // 计算sha256
        System.out.println(Hashing.sha256().hashBytes(input.getBytes()).toString());
        // 计算sha512
        System.out.println(Hashing.sha512().hashBytes(input.getBytes()).toString());
        // 计算crc32
        System.out.println(Hashing.crc32().hashBytes(input.getBytes()).toString());

        System.out.println(Hashing.md5().hashUnencodedChars(input).toString());

    }

}

你可能感兴趣的:(开发工具,java)