您的位置:首页 > 编程语言 > Java开发

Java Base64 加密解密 (数据加密或解决手机Emoji表情被数据库过滤掉的问题)

2017-06-08 10:15 676 查看
1、最适合应用场景:

h5或者android开发中通常会遇到一种场景,当用手机输入法输入Emoji表情符的时候,由于数据库不支持,保存时这些表情符号就会被过滤掉以至于无法显示,android和h5开发中可以使用Base64算法解决这个问题。

2、使用工具:

使用Apache commons codec 类Base64

3、引入jar包:

加入jar包依赖(如果是maven项目就直接在pom文件中加入下边内容,若不是就加入对应jar包)

<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.6</version>
</dependency>


4、加密解密实现:

import org.apache.commons.codec.binary.Base64;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.UnsupportedEncodingException;

/**
* 将String类型的字符串进行base64编码与解码,使用utf-8
*/
public class Base64Util {

private static final Logger logger = LoggerFactory.getLogger(Base64Util.class);

/**
* 对给定的字符串进行base64加密
*/
public static String encodeData(String inputData) {
try {
if (null == inputData) {
return null;
}
return new String(Base64.encodeBase64(inputData.getBytes("utf-8")), "utf-8");
} catch (UnsupportedEncodingException e) {
logger.error(inputData, e);
}

return null;
}
/**
* 对给定的字符串进行base64解密
*/
public static String decodeData(String inputData) {
try {
if (null == inputData) {
return null;
}
return new String(Base64.decodeBase64(inputData.getBytes("utf-8")), "utf-8");
} catch (UnsupportedEncodingException e) {
logger.error(inputData, e);
}

return null;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: