1 package ejava.examples.orm.rel.annotated;
2
3 import javax.persistence.*;
4
5 import org.apache.commons.logging.Log;
6 import org.apache.commons.logging.LogFactory;
7
8
9
10
11
12
13
14 @Entity
15 @Table(name="ORMREL_PERSON")
16 public class Person {
17 private static Log log = LogFactory.getLog(Person.class);
18 @Id @GeneratedValue @Column(name="PERSON_ID")
19 private long id;
20 private String firstName;
21 private String lastName;
22 private String phone;
23
24 @OneToOne(cascade={
25 CascadeType.ALL},
26 fetch=FetchType.LAZY)
27 @JoinColumn(name="PERSON_PHOTO")
28 private Photo photo;
29
30 public Person() { log.info(super.toString() + ", ctor()");}
31
32 public long getId() {
33 return id;
34 }
35
36 public String getFirstName() { return firstName; }
37 public void setFirstName(String firstName) {
38 this.firstName = firstName;
39 }
40
41 public String getLastName() { return lastName; }
42 public void setLastName(String lastName) {
43 this.lastName = lastName;
44 }
45
46 public String getPhone() { return phone; }
47 public void setPhone(String phone) {
48 this.phone = phone;
49 }
50
51 public Photo getPhoto() { return photo; }
52 public void setPhoto(Photo photo) {
53 this.photo = photo;
54 }
55
56 public String toString() {
57 return super.toString() +
58 ", id=" + id +
59 ", name=" + firstName + " " + lastName +
60 ", phone=" + phone +
61 ", photo=" + photo;
62 }
63
64 }