プレーンコピーをクリップボードプリントに表示しますか?
パッケージcom.hujuan.bean;
java.util.HashSet をインポートします。
java.util.Setをインポートします。
インポート javax.persistence.CascadeType;
インポート javax.persistence.Column;
インポートjavax.persistence.Entity;
インポート javax.persistence.FetchType;
インポートjavax.persistence.Id;
インポート javax.persistence.OneToMany;
インポート javax.persistence.Table;
@実在物
@Table(name="注文")
パブリック クラス オーダー {
プライベート文字列ID;
プライベートFloat量;
private Set<OrderItem> items = new HashSet<OrderItem>();
@Id @Column(長さ=10)
パブリック String getId() {
ID を返します。
}
public void setId(String id) {
this.id = ID;
}
@Column(nullable=false)
public Float getAmount() {
返金額。
}
public void setAmount(Float amount) {
this.amount = 金額;
}
// 级联操作
@OneToMany(cascade= {CascadeType.REFRESH,CascadeType.PERSIST,CascadeType.MERGE,CascadeType.REMOVE},fetch=FetchType.LAZY,mappedBy="order")
public Set<OrderItem> getItems() {
返品品。
}
public void setItems(Set<OrderItem> items) {
this.items = アイテム;
}
public void addOrderItem(OrderItem orderItem){
orderItem.setOrder(this);
this.items.add(orderItem);
}
}
パッケージcom.hujuan.bean;
java.util.HashSet をインポートします。
java.util.Setをインポートします。
インポート javax.persistence.CascadeType;
インポート javax.persistence.Column;
インポートjavax.persistence.Entity;
インポート javax.persistence.FetchType;
インポートjavax.persistence.Id;
インポート javax.persistence.OneToMany;
インポート javax.persistence.Table;
@実在物
@Table(name="注文")
パブリック クラス オーダー {
プライベート文字列ID;
プライベートFloat量;
private Set<OrderItem> items = new HashSet<OrderItem>();
@Id @Column(長さ=10)
パブリック String getId() {
ID を返します。
}
public void setId(String id) {
this.id = ID;
}
@Column(nullable=false)
public Float getAmount() {
返金額。
}
public void setAmount(Float amount) {
this.amount = 金額;
}
// 级联操作
@OneToMany(cascade= {CascadeType.REFRESH,CascadeType.PERSIST,CascadeType.MERGE,CascadeType.REMOVE},fetch=FetchType.LAZY,mappedBy="order")
public Set<OrderItem> getItems() {
返品品。
}
public void setItems(Set<OrderItem> items) {
this.items = アイテム;
}
public void addOrderItem(OrderItem orderItem){
orderItem.setOrder(this);
this.items.add(orderItem);
}
}
カスケード操作
カスケードタイプ。 PERSIST 保存 操作
カスケードタイプ。 MERGE 级联更新 ( 結合 ) 操作
カスケードタイプ。 REFRESH 级联刷新操作,只会查询获取操作
カスケードタイプ。 REMOVE 级联删除操作
カスケードタイプ。 ALL级联以上全操作
フェッチ抓取か否か延在加下,軘情一的方は即時加下,多的方は延在加下
マップ済み关系维护
mappedBy= "order" OrderItem クラス内の順序プロパティを表示します。
プレーンコピーをクリップボードプリントに表示しますか?
パッケージcom.hujuan.bean;
インポート javax.persistence.CascadeType;
インポート javax.persistence.Column;
インポートjavax.persistence.Entity;
インポート javax.persistence.GeneratedValue;
インポートjavax.persistence.Id;
インポートjavax.persistence.JoinColumn;
インポート javax.persistence.ManyToOne;
@実在物
パブリック クラス OrderItem {
プライベート整数 ID;
プライベート文字列製品名;
private Float sellPrice = 0f;
プライベートオーダー注文;
@Id @GeneratedValue
public Integer getId() {
ID を返します。
}
public void setId(整数ID) {
this.id = ID;
}
@Column(長さ=30、nullable=false)
public String getProductName() {
製品名を返します。
}
public void setProductName(String productName) {
this.製品名 = 製品名;
}
@Column(nullable=false)
public Float getSellPrice() {
販売価格を返します。
}
public void setSellPrice(Float sellPrice) {
this.sellPrice = 販売価格;
}
//optional=true は、このオブジェクト (Order) が選択可能であり、オブジェクト (Order) が存在しなくてもよいことを示します
//値が false であることを示します。このオブジェクト (Order) は必ず存在しなければなりません。データベース内の外部の制限は null にすることはできません)
@ManyToOne(cascade={CascadeType.MERGE,CascadeType.REFRESH},optional=false)
//外部ボタン名を決定します
@JoinColumn(name="order_id")
パブリックオーダー getOrder() {
返品命令。
}
public void setOrder(注文順序) {
this.order = 注文;
}
}
本文はCSDN博客、转下请标明出处から来ました: http://blog.csdn.net/SuperBoo/archive/2009/12/30/5103913.aspx