In the following example, the PurchaseOrderKey class implements a composite key for the PurchaseOrderEJB entity bean. The key is composed of two fields, productModel and vendorId, whose names must match two of the persistent fields in the entity bean class.
public class PurchaseOrderKey implements java.io.Serializable { public String productModel; public String vendorId; public PurchaseOrderKey() { }; public String getProductModel() { return productModel; } public String getVendorId() { return vendorId; } public boolean equals(Object other) { if (other instanceof PurchaseOrderKey) { return (productModel.equals( ((PurchaseOrderKey)other).productModel) && vendorId.equals( ((PurchaseOrderKey)other).vendorId)); } return false; } public int hashCode() { return productModel.concat(vendorId).hashCode(); }}