大数据全系列 教程
1869个小节阅读:467.3k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
7.7.11 generateRowKey方法实现
AnalyserLogDataMapper类的generateRowKey方法实现。
xxxxxxxxxx
//创建对象,生成rowkey使用
private CRC32 crc32 = new CRC32();
/**根据参数生成rowkey
* @param uuid 用户id
* @param memberId 会员id
* @param alias 事件别名
* @param serverTime 服务器事件
* @return 字符串类型的rowkey
*/
private String generateRowKey(String uuid, String memberId, String alias, String serverTime) {
//创建StringBuilder对象
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(serverTime).append("_");
this.crc32.reset();
//判断uuid是否为空
if(StringUtils.isNotBlank(uuid)){//不为空时,拼接到crc32
this.crc32.update(uuid.getBytes());
}
//判断会员id不为空时,更新到crc32中
if(StringUtils.isNotBlank(memberId)){
this.crc32.update(memberId.getBytes());
}
this.crc32.update(alias.getBytes());
stringBuilder.append(this.crc32.getValue()%100000000L);
//将stringBuilder转换为字符串对象并返回
return stringBuilder.toString();
}