package org.hibernate.examples.mapping.compositeId.idclass; import lombok.Getter; import lombok.Setter; import org.hibernate.examples.model.AbstractValueObject; import org.hibernate.examples.utils.HashTool; import org.hibernate.examples.utils.ToStringHelper; /** * 브랜드 명과 연식으로 자동차의 Identifier 값으로 표현합니다. * * @author 배성혁 sunghyouk.bae@gmail.com * @since 2013. 11. 29. 오후 4:32 */ @Getter @Setter public class CarIdentifier extends AbstractValueObject { private String brand; private int year; protected CarIdentifier() {} public CarIdentifier(String brand, int year) { this.brand = brand; this.year = year; } @Override public int hashCode() { return HashTool.compute(brand, year); } @Override public ToStringHelper buildStringHelper() { return super.buildStringHelper() .add("brand", brand) .add("year", year); } private static final long serialVersionUID = -8248095183925181094L; }