`
longgangbai
  • 浏览: 7331744 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

apatche组件的研究和使用

阅读更多
本节讲述加密算法和加密算法的使用研究
如果有疑问请看源代码:

轻松一刻哦

o(∩_∩)o...哈哈
徘徊在牛A和牛B之间的人
o(∩_∩)o...哈哈


package cn.com.huawei.opensource.common.codecs;


import java.util.logging.Logger;

import org.apache.commons.codec.DecoderException;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.codec.language.Metaphone;
import org.apache.commons.codec.language.RefinedSoundex;
import org.apache.commons.codec.language.Soundex;
import org.apache.commons.codec.digest.DigestUtils;

/**
*Commons-codec组件设置各种编码是算法的信息
* @author bailonggang
* 2009-2-8
* 下午03:58:14
*/
public class CodeCUtil {
 
private static Logger logger=Logger.getLogger(CodeCUtil.class.getName());  
/**
  * MD5加密的过程的应用
  * @param crbyte
  * @return
  */
public static String encodeMD5(String crbyte)
{
byte[] bytes=crbyte.getBytes();

return DigestUtils.md5Hex(bytes);

}
/**
  * MD5加密的过程的应用
  * @param crbyte
  * @return
  */
public static String encodeSHA1(String crbyte)
{
byte[] bytes=crbyte.getBytes();
return DigestUtils.shaHex(bytes);

}
/**
  * 字符串的解码过程
  * @param enbytes
  * @return
  */
   public  static Object  decodeBase64(String enbytes)
   {
   Base64 base64 = new Base64();
       Object obj=null;
try {
obj = base64.decode(enbytes);
} catch (DecoderException e) {
      logger.info("base64 decode ["+enbytes+"] error:"+e.getMessage());
}
        return obj;
   }
   /**
    * base64编码的过程的信息
    * @param crbty
    * @return
    */
   public  static String encodeBase64(String crbty)
   {
       Base64 base64 = new Base64();
       byte[] enbytes =base64.encode(crbty.getBytes());
       return new String(enbytes);
   }
   /**
    * 十六进制加密的过程
    * @param enbyte
    * @return
    * @throws DecoderException
    */
   public static String encodeHex(String enbyte) throws DecoderException
   {
       char[] enbytes = Hex.encodeHex(enbyte.getBytes());
           return new String(enbytes);
   }
   /**
    * 十六进制解密的过程
    * @param enbytes
    * @return
    * @throws DecoderException
    */
   public static String decodeHex(String enbytes) throws DecoderException
   {
       byte[] bytes=Hex.decodeHex(enbytes.toCharArray());
           return new String(bytes);
   }
   /**
    * Metaphone 建立出相同的key给发音相似的单字, 比 Soundex 还要准确, 但是 Metaphone
    * 没有固定长度, Soundex 则是固定第一个英文字加上3个数字. 这通常是用在类似音比对,
    * 也可以用在 MP3 的软件开发.
    *
    */
   public static void languageEncoding()
   {
   Metaphone metaphone = new Metaphone();
           RefinedSoundex refinedSoundex = new RefinedSoundex();
           Soundex soundex = new Soundex();
           for (int i = 0; i < 2; i++) {
               String str = (i == 0) ? "resume" : "resin";
               String mString = null;
               String rString = null;
               String sString = null;
               try {
                   mString = metaphone.encode(str);
                   rString = refinedSoundex.encode(str);
                   sString = soundex.encode(str);
               } catch (Exception ex){
                   ;
               }
               System.out.println("Original:" + str);
               System.out.println("Metaphone:" + mString);
               System.out.println("RefinedSoundex:" + rString);
               System.out.println("Soundex:" + sString + "\n");
           }
   }

}


分享到:
评论

相关推荐

    apatche 6.0

    它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。同时Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。也是一个基金会...

    java apatche ftp 支持断点续传等

    `TestFTP_ddxc`这个文件可能是一个测试程序,包含了如何使用Apache FTP库进行文件上传和下载的示例代码。在这个程序中,开发者可能演示了如何打开和关闭连接,创建或改变远程目录,上传和下载文件,以及如何处理断点...

    json第三方jar包.zip

    使用apatche的jar包 已有 commons beanutils 1 8 3 jar 复制 commons collections 3 2 1 jar 对java util的增强 commons lang 2 5 jar 对java lang的增强 commons logging 1 1 1 jar 日志 "&gt;JSON 类库...

    Apache的数据源及数据库连接池JAR集合.rar

    Apache最新的Dcommons-dbcp2-2.7.0和commons-pool2-2.7.0数据源及数据库连接池Jar包

    apache-kylin-2.5.1-bin-hbase1x.tar.gz

    - **元数据管理**:Kylin使用HBase和HDFS来存储元数据,确保高可用性和持久性。 3. **与HBase的关系**: - **数据存储**:在Kylin中,预计算的立方体数据默认存储在HBase中,利用其列式存储和分布式特性,实现...

    Json类库,json架包,json lib jdk,Json必备

    * 使用apatche的jar包 * commons-beanutils-1.8.3.jar(复制) * commons-collections-3.2.1.jar(对java.util的增强) * commons-lang-2.5.jar(对java.lang的增强) * commons-logging-1.1.1.jar(日志 )

    json类库,json必备,json-jdk

    * 使用apatche的jar包 * commons-beanutils-1.8.3.jar(复制) * commons-collections-3.2.1.jar(对java.util的增强) * commons-lang-2.5.jar(对java.lang的增强) * commons-logging-1.1.1.jar(日志 )

    Alog DaXu 3.0.0.15 UTF8.rar

    Alog日志系统原名Logs,现...a.Apatche服务器请在设置后,复制rewrite目录下.htaccess文件到网站根目录。 b.IIS服务器请在设置后,复制rewrite目录下httpd.ini文件到网站根目录。 c.其他服务器,如Nginx等参照设置。

    Alog Ben v3.0.0.15

    URL路由开关说明当URL路由设置为开启时页面路径将使用伪静态,请根据服务器情况设置响应的伪静态规则。a.Apatche服务器请在设置后,复制rewrite目录下.htaccess文件到网站根目录。b.IIS服务器请在设置后,复制...

    cloudtest-1.0.4-b201302231138PM Release

    CloudTest is an open source project initiated by the individual, which is distributed on Apatche Licenses 2.0 releases. Every organization or individual is fully granted for viewing its source code or...

    echo3 JavaScript 实例

    apatche开源项目echo的第三版示例,全用的javascript,强烈建议那些想写桌面型的胖客户端看看。其中的源码都可以下载的,或者用那些chm查看器解压缩就可以了

    Alog Ben V3.0.0.15 简体utf-8版本.rar

    URL路由开关说明 --------------------------------------------------------- 当URL路由设置为开启时页面路径将使用伪静态,请根据服务器情 况设置响应的伪静态规则。 a.Apatche服务器请在设置后,复制rewrite目录...

    最新vRules4j-2.1.2-b20090622.zip下载

    vRules4j是由个人发起的开源项目,它基于Apatche Licenses 2.0 免费发布。任何组织或者个人都可以查看其源码并根据自己的需要修改源码,同时在商业应用中具有最大的授权许可。具体Licenses 条款请参阅...

Global site tag (gtag.js) - Google Analytics