N-End persistence classes for 1-n relationships Package org.drsoft.hibernate.model.oneToMany;
??
Import Java.util.Date;
??
Import javax.persistence.*;
??
@Entity
@Table (name = "Onetomany_many")
public class Onetomanyformanymodel {
??
@Id
@Column (name = "detail_id")
@GeneratedValue (strategy = generationtype.identity)
private int detailid;
??
@Column (name = "Trade_amt")
Private long Tradeamt;
??
@Column (name = "Create_time", insertable = false, updatable = False)
Private Date Createtime;
??
@ManyToOne
@JoinColumn (name = "ref_record_id", referencedcolumnname = "record_id")
Private Onetomanyforonemodel Onetomanyforonemodel;
??
Omit setter and Getter
}
??
Test Call Package org.drsoft.hibernate.manager.oneToMany;
??
Import java.util.*;
??
Import org.drsoft.hibernate.model.onetomany.*;
Import Org.drsoft.utils.hibernateUtils;
Import org.hibernate.Session;
Import org.hibernate.Transaction;
??
public class Onetomanymanager {
public static void Main (string[] args) {
Session cursession = Hibernateutils.opensession ();
Transaction curtransaction = null;
Calendar calendar = calendar.getinstance (Locale.china);
try {
System.out.println ("#1 create one and many data");
#1 Create one and many data
Onetomanyforonemodel Onetomanyforonemodel = new Onetomanyforonemodel ();
??
Long Totaltradeamt = 0;
for (int i = 0; i < 5; i++) {
Onetomanyformanymodel Onetomanyformanymodel = new Onetomanyformanymodel ();
Onetomanyformanymodel.settradeamt (Calendar.get (calendar.second) + i);
Totaltradeamt = Totaltradeamt + Onetomanyformanymodel.gettradeamt ();
if (onetomanyforonemodel.getdetails () = = null) {
Onetomanyforonemodel.setdetails (New hashset<onetomanyformanymodel> ());
System.out.println ("Create hashset<onetomanyformanymodel> ()");
}
Onetomanyforonemodel.getdetails (). Add (Onetomanyformanymodel);
}
??
Onetomanyforonemodel.settotaltradeamt (Totaltradeamt);
Onetomanyforonemodel.setmodifytime (New Date ());
??
Curtransaction = Hibernateutils.begintransaction (cursession);
Cursession.persist (Onetomanyforonemodel);
Curtransaction.commit ();
??
SYSTEM.OUT.PRINTLN ("#2 query one Data");
#2 Querying one data
Onetomanyforonemodel = (Onetomanyforonemodel) cursession.load (Onetomanyforonemodel.class, New Integer (1));
System.out.println ("Onetomanyforonemodel recordid=" + onetomanyforonemodel.getrecordid ()
+ "\ttotaltradeamt=" + Onetomanyforonemodel.gettotaltradeamt ());
??
set<onetomanyformanymodel> details = onetomanyforonemodel.getdetails ();
Iterator<onetomanyformanymodel> it = Details.iterator ();
while (It.hasnext ()) {
Onetomanyformanymodel obj = It.next ();
System.out.println (
"Onetomanyformanymodel detailid=" + obj.getdetailid () + "\ttradeamt=" + Obj.gettradeamt ());
}
} catch (Exception e) {
if (curtransaction! = null && curtransaction.isactive ()) {
Curtransaction.rollback ();
}
??
Throw e;
} finally {
if (cursession! = null) {
Cursession.close ();
}
}
}
}
??