KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > hibernate > test > annotations > fetch > Person


1 //$Id: Person.java,v 1.1 2005/07/20 00:18:05 epbernard Exp $
2
package org.hibernate.test.annotations.fetch;
3
4 import java.io.Serializable JavaDoc;
5 import java.util.ArrayList JavaDoc;
6 import java.util.Collection JavaDoc;
7 import java.util.Date JavaDoc;
8 import java.util.List JavaDoc;
9 import javax.persistence.CascadeType;
10 import javax.persistence.Entity;
11 import javax.persistence.FetchType;
12 import javax.persistence.GeneratorType;
13 import javax.persistence.Id;
14 import javax.persistence.OneToMany;
15 import javax.persistence.Table;
16
17
18 /**
19  * @author Emmanuel Bernard
20  */

21 @Entity
22         @Table(name = "Person")
23         public class Person implements Serializable JavaDoc {
24     static final long serialVersionUID = 1000102;
25
26     // member declaration
27
private int id;
28     private String JavaDoc firstName;
29     private String JavaDoc lastName;
30     private String JavaDoc companyName;
31
32     private Collection JavaDoc<Stay> stays;
33
34     // constructors
35
public Person() {
36     }
37
38     public Person(String JavaDoc firstName, String JavaDoc lastName, String JavaDoc companyName) {
39         this.firstName = firstName;
40         this.lastName = lastName;
41         this.companyName = companyName;
42     }
43
44     // properties
45
public String JavaDoc getCompanyName() {
46         return companyName;
47     }
48
49     public void setCompanyName(String JavaDoc companyName) {
50         this.companyName = companyName;
51     }
52
53     public String JavaDoc getFirstName() {
54         return firstName;
55     }
56
57     public void setFirstName(String JavaDoc firstName) {
58         this.firstName = firstName;
59     }
60
61     @Id(generate = GeneratorType.AUTO)
62             public int getId() {
63         return id;
64     }
65
66     public void setId(int id) {
67         this.id = id;
68     }
69
70     public String JavaDoc getLastName() {
71         return lastName;
72     }
73
74     public void setLastName(String JavaDoc lastName) {
75         this.lastName = lastName;
76     }
77
78
79     // relationships
80

81     @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "person")
82             public Collection JavaDoc<Stay> getStays() {
83         return this.stays;
84     }
85
86     public void setStays(List JavaDoc<Stay> stays) {
87         this.stays = stays;
88     }
89
90
91     // business logic
92
public void addStay(Date JavaDoc startDate, Date JavaDoc endDate, String JavaDoc vessel, String JavaDoc authoriser, String JavaDoc comments) {
93         Stay stay = new Stay( this, startDate, endDate, vessel, authoriser, comments );
94         addStay( stay );
95     }
96
97     public void addStay(Stay stay) {
98         Collection JavaDoc<Stay> stays = getStays();
99         if ( stays == null ) {
100             stays = new ArrayList JavaDoc<Stay>();
101         }
102         stays.add( stay );
103
104         this.stays = stays;
105     }
106 }
107
Popular Tags