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);
}
}