java利用Apache commons codec進行MD5加密,BASE64加密解密,執(zhí)行系統(tǒng)命令
編寫代碼之前先來介紹一下我們要用到的兩個包;
commons-codec-1.10.jar
Commons項目中用來處理常用的編碼方法的工具類包,例如DES、SHA1、MD5、Base64,URL,Soundx等等。
commons-exec-1.3.jar
Apache Commons Exec 是 Apache 上的一個 Java 項目,提供一些常用的方法用來執(zhí)行外部進程
你可以到本站直接下載 Apache Commons 官方包
下面看一下代碼結構:
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.digest.DigestUtils;
/**
* @author Delver_Si
*
*/
public class EncodeAndDecode {
/**
* Md5加密
* @param str
* @return
*/
public static String Md5encode(String str) {
return DigestUtils.md5Hex(str);
}
/**
* Base64加密
* @param str
* @return
*/
public static String Base64encode(String str) {
byte[] b = Base64.encodeBase64(str.getBytes(), true);
return new String(b);
}
/**
* Base64解密
* @param str
* @return
*/
public static String Base64decode(String str) {
byte[] b = Base64.decodeBase64(str.getBytes());
return new String(b);
}
/**
* 生成SHA1
*/
public static String SHA1encode(String str) {
return DigestUtils.sha1Hex(str);
}
}
把主要功能都放在一個類文件中
新建Test類引用上個文件
import security.EncodeAndDecode;
import security.Exec;
public class Test {
public static void main(String[] args) {
System.out.println(EncodeAndDecode.Md5encode("jb51.net"));//MD5加密
System.out.println(EncodeAndDecode.Base64encode("jb51.net"));//Base64加密
System.out.println(EncodeAndDecode.Base64decode("amI1MS5uZXQ="));//Base64解密
String str = Exec.exec("ping jb51.net");//執(zhí)行系統(tǒng)的Ping命令
System.out.println(str);
}
}
好了 ,運行一下看看最終結果
這些只是Apache commons 包的基本功能,其它功能大家可以到這里下載 apache commons 使用說明 中文WORD版 詳細研究
相關文章
Spring5中SpringWebContext方法過時的解決方案
這篇文章主要介紹了Spring5中SpringWebContext方法過時的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01
解決springcloud啟動時報錯Connection refused:connect問題
這篇文章主要介紹了解決springcloud啟動時報錯Connection refused:connect問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
Java?MyBatis實戰(zhàn)之QueryWrapper中and和or拼接技巧大全
在Java中QueryWrapper是MyBatis-Plus框架中的一個查詢構造器,它提供了豐富的查詢方法,其中包括and和or方法,可以用于構建復雜的查詢條件,這篇文章主要給大家介紹了關于Java?MyBatis實戰(zhàn)之QueryWrapper中and和or拼接技巧的相關資料,需要的朋友可以參考下2024-07-07
SpringBoot項目啟動時提示程序包不存在和找不到符號的處理方法
最近接手同事開發(fā)的一個Springboot工作項目,從svn上整體拉取下來后,構建完成后,啟動的時候遇到了程序包找不到的情況,所以本文記錄了SpringBoot項目啟動時提示程序包不存在和找不到符號的處理方法,需要的朋友可以參考下2024-05-05
Java中的讀寫鎖ReentrantReadWriteLock源碼分析
這篇文章主要介紹了Java中的讀寫鎖ReentrantReadWriteLock源碼分析,ReentrantReadWriteLock 分為讀鎖和寫鎖兩個實例,讀鎖是共享鎖,可被多個線程同時使用,寫鎖是獨占鎖,持有寫鎖的線程可以繼續(xù)獲取讀鎖,反之不行,需要的朋友可以參考下2023-12-12
java之使用多線程代替for循環(huán)(解決主線程提前結束問題)
這篇文章主要介紹了java之使用多線程代替for循環(huán)(解決主線程提前結束問題),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-03-03

