文档章节

apache commons-codec 使用实例

 魔仙剑痴
发布于 2014/12/15 16:01
字数 203
阅读 483
收藏 0
package com.jiepu.commons_codec_demo;

import org.apache.commons.codec.CharEncoding;
import org.apache.commons.codec.binary.Base32;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.codec.binary.StringUtils;
import org.apache.commons.codec.digest.Crypt;
import org.apache.commons.codec.digest.DigestUtils;
import org.apache.commons.codec.digest.HmacUtils;
import org.apache.commons.codec.digest.Md5Crypt;
import org.apache.commons.codec.digest.Sha2Crypt;
import org.apache.commons.codec.digest.UnixCrypt;
import org.apache.commons.codec.net.BCodec;
import org.apache.commons.codec.net.QCodec;
import org.apache.commons.codec.net.URLCodec;

/**
 * commons-codec  demo
 * apache commons-codec实例
 *
 */
public class App {
	public static void main(String[] args) throws Exception {
		String str = "你好";
		String key="key";
		URLCodec urlCodec = new URLCodec();
		String code = urlCodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		String data = urlCodec.decode(code, CharEncoding.UTF_8);
		System.out.println(data);

		QCodec qcodec = new QCodec();
		code = qcodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		data = qcodec.decode(code);
		System.out.println(data);
		
		BCodec bcodec = new BCodec();
		code = bcodec.encode(str, CharEncoding.UTF_8);
		System.out.println(code);
		data = bcodec.decode(code);
		System.out.println(data);
		
		System.out.println(DigestUtils.md5Hex(str));
		System.out.println(DigestUtils.md2Hex(str));
		System.out.println(DigestUtils.sha1Hex(str));
		System.out.println(DigestUtils.sha256Hex(str));
		System.out.println(DigestUtils.sha384Hex(str));
		System.out.println(DigestUtils.sha512Hex(str));
		System.out.println(DigestUtils.shaHex(str));
		
		System.out.println(Sha2Crypt.sha512Crypt(str.getBytes()));
		System.out.println(Sha2Crypt.sha512Crypt(str.getBytes()));
		System.out.println(Md5Crypt.md5Crypt(str.getBytes()));
		System.out.println(UnixCrypt.crypt(str.getBytes()));

		System.out.println(HmacUtils.hmacMd5Hex(key, str));
		System.out.println(HmacUtils.hmacSha1Hex(key, str));
		System.out.println(HmacUtils.hmacSha256Hex(key, str));
		System.out.println(HmacUtils.hmacSha384Hex(key, str));
		System.out.println(HmacUtils.hmacSha512Hex(key, str));
		
		System.out.println( Md5Crypt.apr1Crypt(str));
		System.out.println(Crypt.crypt(str));
	
		
		code=Base64.encodeBase64String(str.getBytes());
		System.out.println(Base64.isBase64(code));
		System.out.println(StringUtils.newStringUtf8(Base64.decodeBase64(code)));
		
		char[] chs=Hex.encodeHex(str.getBytes());
		System.out.println(chs);
		System.out.println(StringUtils.newStringUtf8(Hex.decodeHex(chs)));
		System.out.println("Hello World!");
	}
}


© 著作权归作者所有

粉丝 3
博文 10
码字总数 1804
作品 0
深圳
架构师
私信 提问
Apache Commons Codec:各种加密了解一下

简介 Apache Commons Codec: Apache Commons Codec (TM) software provides implementations of common encoders and decoders such as Base64, Hex, Phonetic and URLs. Apache Commons Cod......

aboyliupu
2018/11/15
0
0
通过 EWS JAVA API读取exchange邮件

第一步,下载EWS JAVA API包 从如下路径下载EWS API包:http://code.msdn.microsoft.com/Exchange-EWS-Java-API-12-1a5a1143 第二步,下载依赖包 下载如下依赖包: - Apache Commons HttpCli...

YOTOO
2014/07/08
7K
2
编/解码器包 Apache Commons Codec 1.12 发布

Apache Commons Codec 1.12 发布了,Commons Codec 包中包含简单的各种格式的编码器和解码器,如 Base64 和 Hexadecimal。除了这些广泛使用的编码器和解码器,Commons Codec 包也维护着语音编...

h4cd
02/20
1K
0
Apache Commons Codec 1.13 发布

Apache Commons Codec 1.13 发布,它包含各种格式(如 base 64 和十六进制)的简单编码器和解码器。除了这些广泛使用的编码器和解码器之外,编解码程序包还维护语音编码实用程序。 新特性: ...

afterer
07/28
1K
2
java.lang.NoClassDefFoundError: org/apache/comm...

用cacuts做单元测试servlet时候总报这个错误,原来是bin文件缺少了要一个包commons-codec-1.x.jar 网络编程HttpClient 要一个包commons-codec-1.x.jar HttpClient 用到了 Apache Jakarta com...

小样
2013/02/26
80
0

没有更多内容

加载失败,请刷新页面

加载更多

重新开始学Java——反射

概念 reflection:自省 反射:镜子可以反射阳光一个java类 或 对象 通过照"镜子"来认知自己 Java语言中是怎么实现照镜子? java.lang.reflect 包 提供了"照镜子"API(应用程序接口) 如果要...

大家都是低调来的
22分钟前
6
0
爬取720万条城市历史天气数据

内容爬虫完毕,校验完毕,缺失信息暂未统计。总数据720万,地区3200个,年份从2011-2019,大小950Mb,原始数据已丢失,需要的朋友可以自己运行脚本挂一晚上。中间遇到了很多坑,有机会我再写...

八音弦
25分钟前
15
0
python的字典类型

1、新建字典 通过键值对 dict_1 = {'a':1,'b':2,'c':3} 通过dict()函数 list_1 = ['adam', 'bob', 'cathy', 'david', 'emma'] list_2 = [1,2,3,4,5] dict_2 = dict(zip(list_1,list_2)) 2、字......

davidwbnu
27分钟前
5
0
springcloud vue.js 前后分离 activiti工作流

本商品为 :springcloud + Springboot 微服务\分布式 工作流 前后分离 + 跨域 版本 (权限控制到菜单和按钮) 后台框架 :springcloud Greenwich.SR1 + springboot 2.1.4 + activiti6.0.0 + ...

java框架开发者
33分钟前
11
0
【jQuery基础学习】07 jQuery表单插件-Form

本文转载于:专业的前端网站➦【jQuery基础学习】07 jQuery表单插件-Form 作用:jQuery Form插件的作用是为了让我们可以很方便地用ajax的方式提交表单,从而使我们提交表单的时候页面不用进行...

前端老手
42分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部