`
ipioneer
  • 浏览: 45796 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
JPA联合主键 jpa JPA 联合主键
/**
 * 联合主键
 * 
 * 1、必须实现Serializable序列化 2、必须提示无参的构造方法 3、必须重写hashCode和equals方法
 * 
 * @Embeddable 表示该类中所有属性在应用该联合主键的类中作为它的属性(字段)
 * @author 张明学
 * 
 */

@Embeddable
public class AirLinePK implements Serializable {

	private String staCity;

	private String endCity;

	public AirLinePK() {

	}

	public AirLinePK(String staCity, String endCity) {
		this.staCity = staCity;
		this.endCity = endCity;
	}

	@Column(nullable = false, length = 32)
	public String getStaCity() {
		return staCity;
	}

	public void setStaCity(String staCity) {
		this.staCity = staCity;
	}

	@Column(nullable = false, length = 32)
	public String getEndCity() {
		return endCity;
	}

	public void setEndCity(String endCity) {
		this.endCity = endCity;
	}

	@Override
	public int hashCode() {
		final int PRIME = 31;
		int result = 1;
		result = PRIME * result + ((endCity == null) ? 0 : endCity.hashCode());
		result = PRIME * result + ((staCity == null) ? 0 : staCity.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		final AirLinePK other = (AirLinePK) obj;
		if (endCity == null) {
			if (other.endCity != null)
				return false;
		} else if (!endCity.equals(other.endCity))
			return false;
		if (staCity == null) {
			if (other.staCity != null)
				return false;
		} else if (!staCity.equals(other.staCity))
			return false;
		return true;
	}

}
Global site tag (gtag.js) - Google Analytics