Java获取字符串的MD5值和根据邮箱获取Gravatar头像
申请Gravatar头像的教程可以点 创建gravatar头像详细教程 是,主只要该网站配置了 Email 转 Gravatar 代码,输入邮箱就能获得你在 Gravatar 设置的头像,全球通用哦。
下面介绍将 Email 地址 转成 Gravatar 头像的图片地址。
很简单的,做个笔记。
观察 Gravatar 图片的URL
我们先找个 Gravatar 头像,右键查看图片地址:
http://www.gravatar.com/avatar/01459f970ce17cd9e1e783160ecc951c?s=32
上面的 01459f970ce17cd9e1e783160ecc951c 其实是 admin@liuyanzhao.com 的MD5值
然后我们就不难知道具体实现啦。
PHP 是这样做的
- $userEmail = "admin@liuyanzhao.com";
- $userGravatar = 'http://www.gravatar.com/avatar/' . md5($userEmail) . '?s=32';
最终的 $userGravatar 就是图片地址了。看来很简单啦。
Java 实现
同样,主要是一个字符串转成 md5 的操作。
- package com.liuyanzhao.blog.util;
- import java.security.MessageDigest;
- import java.security.NoSuchAlgorithmException;
- /**
- * 常用的方法
- * Created by 言曌 on 2017/8/24.
- */
- public class Functions {
- //将字符串转为MD5
- public static String strToMd5(String str) {
- String md5Str = null;
- if (str != null && str.length() != 0) {
- try {
- MessageDigest md = MessageDigest.getInstance("MD5");
- md.update(str.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));
- }
- //32位
- md5Str = buf.toString();
- //16位
- // md5Str = buf.toString().substring(8, 24);
- } catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- }
- return md5Str;
- }
- //根据email获取gravatar头像
- public static String getGravatar(String email) {
- String emailMd5 = strToMd5(email);
- //设置图片大小32px
- String avatar = "http://www.gravatar.com/avatar/"+emailMd5+"?s=32";
- return avatar;
- }
- }
最终我们添加几条评论,在后台评论区域可以看到带有Gravatar头像评论记录。
Java获取字符串的MD5值和根据邮箱获取Gravatar头像相关推荐
- JAVA 获取文件的MD5值大小以及常见的工具类
1 /** 2 * 获取文件的MD5值大小 3 * 4 * @param file 5 * 文件对象 6 * @return 7 */ 8 public static String getMD5(Fi ...
- c++判断文件是否被修改(获取文件的MD5值)
需求分析 因为项目中需要检测一个文件是否被篡改,我采用了监测文件的MD5值. MD5,简单地来说,就是文件的"指纹".如果原始文件被修改了,那么MD5值也就会跟着发生变化,所以我们 ...
- 最简单之获取app签名md5值
网上教的大多数获取app签名md5值的方法都是通过生成jks还得打开黑窗口,有点小麻烦所以我用代码写了一个获取签名的方法 /*** MD5加密* @param byteStr 需要加密的内容* @re ...
- golang 获取文件的MD5值
golang 获取文件的MD5值 调用下面的函数(输入参数是文件的路径,如/home/user/test.txt),即可获取指定文件的MD5值. func GetFileMD5(pathName st ...
- java 获取md5值报错_java获取文件的MD5值
package com.sichang.util; import java.io.File; import java.io.FileInputStream; import java.math.BigI ...
- java excel md5_EXCEL VBA计算带汉字的字符串的MD5值(VBA转UTF-8保存)
操作思路: 1.使用 ADODB.stream 把字符串转换为UFT-8的编码集存储到文件 AA 2.使用调用windows命令行CertUtil -hashfile c:\11\AA md5 对文件 ...
- Java计算大文件md5值
普通方式: JAVA自带的commons-codec包提供的获取16进制MD5值的方法 DigestUtils.md5Hex(new FileInputStream(path)); 但是对于大文件效率 ...
- (转)Python 用hashlib求中文字符串的MD5值
使用过hashlib库的朋友想必都遇到过以下的错误吧:"Unicode-objects must be encoded before hashing",意思是在进行md5哈希运算前 ...
- Python 用hashlib求中文字符串的MD5值
From: http://blog.csdn.net/haungrui/article/details/6959340 使用过hashlib库的朋友想必都遇到过以下的错误吧:"Unicode ...
- Android获取String的MD5值
/*** 将字符串转成MD5值* * @param string* @return*/public static String stringToMD5(String string) {byte[] h ...
最新文章
- 远程ubuntu虚拟机Tensorflow搭建 - 1 SSH连接
- 通过shell例子来学习循环结构的语法
- webstrom 中 plugins error 设置里 Languages Frameworks里面没有JavaScript?
- php 邮箱重置密码错误,discuz邮箱重置密码参数失败的解决方法
- Python 线程(二):简单锁实现线程同步
- inventory tool for Microsoft Uplates简介
- Infortrend新技术解决高效与节能的矛盾
- ITSM群(48132184)讨论精选
- html表白树代码程序怎么调,抖音表白弹窗vbs代码怎么制作 表白树特效程序代码教程详细介绍...
- 重新注册所有dll文件
- 极客星球 | Unity3D插件模板化探索
- 三维全景拍摄这些技巧很实用
- Pr:制作片尾滚动字幕(基本图形法)
- 功能测试常见的测试方法有哪些?
- 全球及中国仿制药产业未来发展走势及营销产量规模预测报告2021-2027年
- 区块链网络管理平台WeBASE双节点可视化部署
- 安卓linux开机画面,安卓开机画面_安卓开机动画修改_安卓开机动画修改器-Guide信息网...
- drcom上网登录窗不弹出_无线网络连接后不能弹出浏览器登录页面是怎么回事?
- 软件工程——初识文档
- 正则表达式语法简介说明