KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > xpetstore > domain > catalog > ejb > Category


1 package xpetstore.domain.catalog.ejb;
2
3 import java.util.Collection JavaDoc;
4
5 import javax.persistence.CascadeType;
6 import javax.persistence.Column;
7 import javax.persistence.Entity;
8 import javax.persistence.Id;
9 import javax.persistence.JoinColumn;
10 import javax.persistence.OneToMany;
11 import javax.persistence.Table;
12
13
14 /**
15  *
16  * @ ejb.bean
17  * name="Category"
18  * type="CMP"
19  * view-type="local"
20  * primkey-field="categoryId"
21  * schema="Category"
22  * cmp-version="${ejb.cmp.version}"
23  * @ ejb.value-object
24  * name="Category"
25  * match="*"
26  * @ ejb.transaction
27  * type="Required"
28  * @ ejb.persistence
29  * table-name="T_CATEGORY"
30  * @ ejb.finder
31  * signature="Collection findAll()"
32  * query="SELECT OBJECT(c) FROM Category c"
33  *
34  * @ jboss.query
35  * signature="Collection findAll()"
36  * strategy="on-load"
37  * @ jboss.persistence
38  * create-table="${jboss.create.table}"
39  * remove-table="${jboss.remove.table}"
40  */

41 @Entity(name="Category")
42 @Table(name="T_CATEGORY")
43 public class Category
44 {
45    private String JavaDoc categoryId;
46    private String JavaDoc name;
47    private String JavaDoc description;
48    private Collection JavaDoc products;
49    
50    public Category()
51    {
52       
53    }
54    
55     /**
56      * @ ejb.pk-field
57      * @ ejb.persistence
58      * column-name="categoryId"
59      * jdbc-type="VARCHAR"
60      * sql-type="varchar(10)"
61      * @ ejb.interface-method
62      * @ ejb.transaction
63      * type="Supports"
64      */

65    @Id
66    @Column(name="categoryId")
67     public String JavaDoc getCategoryId( )
68     {
69        return categoryId;
70     }
71
72     public void setCategoryId( String JavaDoc categoryId )
73     {
74        this.categoryId = categoryId;
75     }
76
77     /**
78      * @ ejb.persistence
79      * column-name="name"
80      * jdbc-type="VARCHAR"
81      * sql-type="varchar(50)"
82      */

83     @Column(name="name", length=50)
84     public String JavaDoc getName( )
85     {
86        return name;
87     }
88
89     public void setName( String JavaDoc name )
90     {
91        this.name = name;
92     }
93
94     /**
95      * @ ejb.persistence
96      * column-name="description"
97      * jdbc-type="VARCHAR"
98      * sql-type="varchar(255)"
99      */

100     @Column(name="description", length=255)
101     public String JavaDoc getDescription( )
102     {
103        return description;
104     }
105
106     public void setDescription( String JavaDoc description )
107     {
108        this.description = description;
109     }
110
111     /**
112      * @ ejb.interface-method
113      * @ ejb.relation
114      * name="category-products"
115      * role-name="category-has-products"
116      */

117     @OneToMany(targetEntity=Product.class, cascade={CascadeType.ALL})
118     @JoinColumn(name="CATEGORY_ID")
119     public Collection JavaDoc getProducts( )
120     {
121        return products;
122     }
123
124     public void setProducts( Collection JavaDoc products )
125     {
126        this.products = products;
127     }
128 }
129
Popular Tags