peopleSoft 获取MD5工具类

该方法名为getMD5,用于计算输入字符串的MD5哈希值。它创建一个JavaString对象,然后利用MessageDigest类获取MD5实例,对字符串进行加密处理,将字节数组转换为16进制的字符串,处理过程中涉及到字符串截取和填充0的操作。
摘要由CSDN通过智能技术生成
class MD5
   method getMD5(&str As string) Returns string;
end-class;

method getMD5
   /+ &str as String +/
   /+ Returns String +/
   Local JavaObject &strJO = CreateJavaObject("java.lang.String", &str);
   Local JavaObject &messageDigest = GetJavaClass("java.security.MessageDigest").getInstance("MD5");
   &messageDigest.reset();
   &messageDigest.update(&strJO.getBytes());
   &strJO = Null;
   Local JavaObject &byteArray = &messageDigest.digest();
   &messageDigest = Null;
   Local string &md5Str;
   Local string &strTemp;
   Local JavaObject &arrayClass = GetJavaClass("java.lang.reflect.Array");
   Local JavaObject &integer = GetJavaClass("java.lang.Integer");
   Local integer &i;
   For &i = 1 To &byteArray.length
      &strTemp = &integer.toHexString(&integer.decode(&arrayClass.get(&byteArray, &i - 1).toString()));
      If Len(&strTemp) = 1 Then
         &md5Str = &md5Str | "0" | &strTemp;
      Else
         &md5Str = &md5Str | Substring(&strTemp, Len(&strTemp) - 1, Len(&strTemp));
      End-If;
   End-For;
   &byteArray = Null;
   &arrayClass = Null;
   &integer = Null;
   Return &md5Str;
end-method;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值