Java Base64 加密解密 (数据加密或解决手机Emoji表情被数据库过滤掉的问题)
2017年06月08日 10:15:19 glimmer_it 阅读数:359更多
个人分类: 安全加密
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_15783243/article/details/72910675
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;
}
}
Java Base64 加密解密 (数据加密或解决手机Emoji表情被数据库过滤掉的问题)相关推荐
- Java base64加密解密 两种实现方式
1.为什么要使用Base 64 Base 64主要用途不是加密,而是把一些二进制数转成普通字符,方便在网络上传输. 由于一些二进制字符在传输协议中属于 控制字符,不能直接传送,所以需要转换一下才可以. ...
- Java Base64加密解密编码解码
起因 最近因为项目要做等保,需要对用户提交的字段进行加密存储,但是还需要做查询,所以需要能解密. 办法 目前打算采用rsa非对称加密保存数据,实现数据加密和解密,但是很尴尬的发现生成的公钥和秘钥居然是 ...
- JAVA Base64加密解密
关于base64编码Encode和Decode编码的几种方式 Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便 ...
- java Base64加密解密中文乱码处理
前端:因base64对中文支持不友好,故需要对中文进行编码之后再转base64 var sendData = { 'inserted':encode64(encodeURIComponent(JSON ...
- ImageUtils.java:图片处理工具类[裁剪/图片水印/文字水印/缩放补白/Base64加密解密]
用到的jar包: commons-beanutils-1.8.0.jar commons-codec-1.10.jar package com.zhenzhigu.commons.util; im ...
- java base64加密与解密
目录 前言 一.base64加密与解密 1. base64有填充的编码与解码 2. base64无填充的编码与解码 二.MIME友好型base64加密与解密 前言 Base64 编码会将字符串编码得到 ...
- Java AES 加密解密工具类
maven 引入一个依赖 <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec --> <depen ...
- android中base64加密,Android应用开发之android自带Base64加密解密
本文将带你了解Android应用开发之android自带Base64加密解密,希望本文对大家学Android有所帮助. android项目引用不到以下两个java类 import sun.misc.B ...
- javascript base64加密解密
javascript base64加密解密 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8&q ...
最新文章
- linux/docker个人服务器项目中文变问号??,时间差8小时问题解决方法,最新,最有效
- 解决Maven依赖冲突的好帮手,这款IDEA插件了解一下?
- 50颗传感器、超1亿像素,算力700TOPS,这个自动驾驶平台有点儿炫!
- BTC缺乏关键性突破仍需调整,BCH强势姿态保持引领全场
- eclipse查看git地址_Git大文件管理:函数计算和OSS支持的Git LFS服务器
- SAP C4C里没有选择Port binding的url Mashup行为分析
- dotnet 新项目格式与对应框架预定义的宏
- 超详细的MySQL工作原理 体系结构
- C# IEnumerator与 IEnumerable(2) 托管使用
- 利用hasOwnProperty实现的高效的javascript hashtable
- C语言学习方法(详细,适合初学者学习食用)
- sax解析xml详解
- IT学习网站,各大主流网站
- 信息收集及漏洞利用--安全(四)
- php编程怎样装数据库,php数据库管理工具phpmyadmin下载、安装、配置
- Python实现股票双龙战法核心逻辑
- 商业综合体能耗在线监测管理系统_商场管理平台
- VMware虚拟机硬盘大小修改
- 35 - 用正则表达式分别提取电话号的区号、电话号和分机号
- 雷电模拟器一键宏实现循环点击