Meigaraクラスの実装
リスト3がMEIGARAテーブルに対応したMeigaraクラスです。
001:@Entity
002:@Table(name = "MEIGARA")
003:public class Meigara implements Serializable {
004:
005: private int id = 0;
006: private String name = "";
007: private String nameKana = "";
008: private int dosu = 0;
009: private String koji = "";
010: private String sweetPotatoName = "";
011: private String manufacturer = "";
012: private float volume = 0f;
013: private int price = 0;
014:
015: public Meigara() {
016: }
017:
018: public Meigara(
019: int id,
020: String name,
021: String nameKana,
022: int dosu,
023: String koji,
024: String sweetPotatoName,
025: String manufacturer,
026: float volume,
027: int price) {
028: this.id = id;
029: this.name = name;
030: this.nameKana = nameKana;
031: this.dosu = dosu;
032: this.koji = koji;
033: this.sweetPotatoName = sweetPotatoName;
034: this.manufacturer = manufacturer;
035: this.volume = volume;
036: this.price = price;
037: }
038:
039: @Id
040: @GeneratedValue(strategy=GenerationType.IDENTITY)
041: @Column(name = "ID")
042: public int getId() {
043: return id;
044: }
045:
046: public void setId(int id) {
047: this.id = id;
048: }
049:
050: @Column(name = "NAME")
051: public String getName() {
052: return name;
053: }
054:
055: public void setName(String name) {
056: this.name = name;
057: }
058:
059: @Column(name = "NAMEKANA")
060: public String getNameKana() {
061: return nameKana;
062: }
063:
064: public void setNameKana(String nameKana) {
065: this.nameKana = nameKana;
066: }
067:
068: @Column(name = "DOSU")
069: public int getDosu() {
070: return dosu;
071: }
072:
073: public void setDosu(int dosu) {
074: this.dosu = dosu;
075: }
076:
077: @Column(name = "KOJI")
078: public String getKoji() {
079: return koji;
080: }
081:
082: public void setKoji(String koji) {
083: this.koji = koji;
084: }
085:
086: @Column(name = "SWEETPOTATONAME")
087: public String getSweetPotatoName() {
088: return sweetPotatoName;
089: }
090:
091: public void setSweetPotatoName(String sweetPotatoName) {
092: this.sweetPotatoName = sweetPotatoName;
093: }
094:
095: @Column(name = "MANUFACTURER")
096: public String getManufacturer() {
097: return manufacturer;
098: }
099:
100: public void setManufacturer(String manufacturer) {
101: this.manufacturer = manufacturer;
102: }
103:
104: @Column(name = "VOLUME")
105: public float getVolume() {
106: return volume;
107: }
108:
109: public void setVolume(float volume) {
110: this.volume = volume;
111: }
112:
113: @Column(name = "PRICE")
114: public int getPrice() {
115: return price;
116: }
117:
118: public void setPrice(int price) {
119: this.price = price;
120: }
121:
122:}
このクラスは前編で使用したクラスと同じです。唯一違う行が40行目ですが、TopLinkの場合、この指定を入れなくても自動採番されます。BasketItemクラスとMeigaraクラスは多対1の単方向の関連を持っています。単方向の矢印の先にあるクラス、この場合であればMeigaraクラスはBasketItemクラスから使用されていることさえ認識していません。したがって、関連を表現するアノテーションは一切必要ありません。
