package net.tooan.ynpay.commons; import org.apache.commons.lang.builder.EqualsBuilder; import org.apache.commons.lang.builder.HashCodeBuilder; import org.apache.commons.lang.builder.ToStringBuilder; import java.io.Serializable; /** * Created with IntelliJ IDEA. * User: Jing * Date: 13-10-14 * Time: 上午10:01 */ public abstract class IdEntity implements Serializable { public IdEntity() { super(); } public IdEntity(Long id) { super(); this.id = id; } private Long id; public Long getId() { return id; } public void setId(Long id) { this.id = id; } @Override public int hashCode() { return HashCodeBuilder.reflectionHashCode(id == null ? this : id); } @Override public boolean equals(Object obj) { return obj != null && obj.getClass().isInstance(this) && EqualsBuilder.reflectionEquals(((IdEntity) obj).getId(), id); } @Override public String toString() { return ToStringBuilder.reflectionToString(this); } }