base--AuditObject

//参考base-4.0.2.jar
public
class AuditObject extends HashMap<String, Object> implements TimeReferable
//参考api-1.0.0.jar
//该接口用于表示实现类是时间可参考的,也就是能够获得基准时间。
//以前的实时风控都是基于当前时间来进行的,引入该类希望将实时风控扩展到更深的领域。
public
abstract interface TimeReferable extends Serializable { public abstract Date getReferenceTime(); public abstract void setReferenceTime(Date paramDate); }
//两个构造器,使用默认构造器时,自动生成uuid,uuid属性与equals方法相关。
public AuditObject(String paramString1, String paramString2)
{
  this();
  setPrimaryKey(paramString1);
  setBizCode(paramString2);
}
  
public AuditObject() { setUuid(UUID.randomUUID().toString()); }
//使用get方法从HashMap中获取对应key的value并转化成对应类型的值
//特别注意,这些方法的修饰符为默认(default),所以仅供包内访问使用,可在自己写的ETL中加上这些方法。
String getString(String paramString) { Object localObject
= get(paramString); return localObject == null ? null : localObject.toString(); } Long getLong(String paramString) { Object localObject = get(paramString); return localObject == null ? null : Long.valueOf(Long.parseLong(localObject.toString())); } Date getDate(String paramString) { Object localObject = get(paramString); return localObject == null ? null : new Date(Long.parseLong(localObject.toString())); }
  //重写hashCode()和equals()方法
 //特别要注意的是,此处的equals()方法通过比较两个对象的uuid是否相同来判断两个对象是否相同
 //默认构造器会自动生成uuid
 public int hashCode() { return getUuid().hashCode(); } public boolean equals(Object paramObject) { if (this == paramObject) { return true; } if (paramObject == null) { return false; } if (getClass() != paramObject.getClass()) { return false; } AuditObject localAuditObject = (AuditObject)paramObject; return getUuid().equals(localAuditObject.getUuid()); }

 

转载于:https://www.cnblogs.com/ShanHeDiao/p/5682706.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值