woman.java

来自「hibernate3.2.6源码和jar包」· Java 代码 · 共 92 行

JAVA
92
字号
//$Id: Woman.java 11282 2007-03-14 22:05:59Z epbernard $package org.hibernate.test.annotations.manytomany;import java.io.Serializable;import java.util.Set;import javax.persistence.CascadeType;import javax.persistence.Entity;import javax.persistence.Id;import javax.persistence.JoinColumn;import javax.persistence.JoinTable;import javax.persistence.ManyToMany;import org.hibernate.annotations.ForeignKey;/** * Woman knowing several mens * * @author Emmanuel Bernard */@Entitypublic class Woman implements Serializable {	private WomanPk id;	private String carName;	private Set<Man> mens;	private Set<Cat> cats;	@ManyToMany(mappedBy = "humanContacts")	public Set<Cat> getCats() {		return cats;	}	public void setCats(Set<Cat> cats) {		this.cats = cats;	}	@ManyToMany(cascade = {CascadeType.ALL})	@JoinTable(			name = "Man_Woman",			joinColumns = {			@JoinColumn(name = "womanLastName", referencedColumnName = "lastName"),			@JoinColumn(name = "womanFirstName", referencedColumnName = "firstName")					},			inverseJoinColumns = {			@JoinColumn(name = "manIsElder", referencedColumnName = "elder"),			@JoinColumn(name = "manLastName", referencedColumnName = "lastName"),			@JoinColumn(name = "manFirstName", referencedColumnName = "firstName")					}	)	@ForeignKey(name = "WM_W_FK", inverseName = "WM_M_FK")	public Set<Man> getMens() {		return mens;	}	public void setMens(Set<Man> mens) {		this.mens = mens;	}	@Id	public WomanPk getId() {		return id;	}	public void setId(WomanPk id) {		this.id = id;	}	public String getCarName() {		return carName;	}	public void setCarName(String carName) {		this.carName = carName;	}	public int hashCode() {		//a NPE can occurs, but I don't expect hashcode to be used before pk is set		return getId().hashCode();	}	public boolean equals(Object obj) {		//a NPE can occurs, but I don't expect equals to be used before pk is set		if ( obj != null && obj instanceof Woman ) {			return getId().equals( ( (Woman) obj ).getId() );		}		else {			return false;		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?