package com.phonoforce.tramory.entities; import javax.persistence.*; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import java.util.Date; import static javax.persistence.GenerationType.IDENTITY; @Entity @Table(name = "Customer") @XmlRootElement(name = "customer") @XmlAccessorType(XmlAccessType.FIELD) public class Customer implements IEntity { @XmlElement(required = true) private int customerId; @XmlElement(required = true) private String eMail; @XmlElement(required = true) private String pseudonym; @XmlElement(required = true) private int passwordHash; @XmlElement(required = true) private Date created; @XmlElement(required = true) private String firstName; @XmlElement(required = true) private String middleName; @XmlElement(required = true) private String lastName; @Id @GeneratedValue(strategy = IDENTITY) @Column(name = "customer_id", unique = true, nullable = false) public int getId() { return customerId; } public void setId(int customerId) { this.customerId = customerId; } @Column(name = "e_mail", nullable = false) public String geteMail() { return eMail; } public void seteMail(String eMail) { this.eMail = eMail; } @Column(name = "pseudonym", nullable = false) public String getPseudonym() { return pseudonym; } public void setPseudonym(String pseudonym) { this.pseudonym = pseudonym; } @Column(name = "password_hash", nullable = false) public int getPasswordHash() { return passwordHash; } public void setPasswordHash(int passwordHash) { this.passwordHash = passwordHash; } @Column(name = "created", nullable = false) @Temporal(TemporalType.TIMESTAMP) public Date getCreated() { return created; } public void setCreated(Date created) { this.created = created; } @Column(name = "first_name", nullable = false) public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } @Column(name = "middle_name", nullable = false) public String getMiddleName() { return middleName; } public void setMiddleName(String middleName) { this.middleName = middleName; } @Column(name = "last_name", nullable = false) public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } @Override public String toString() { return "Customer{" + "customerId=" + customerId + ", eMail='" + eMail + '\'' + ", pseudonym='" + pseudonym + '\'' + ", passwordHash=" + passwordHash + ", created=" + created + ", firstName='" + firstName + '\'' + ", middleName='" + middleName + '\'' + ", lastName='" + lastName + '\'' + '}'; } }