2.pojo(EMP)
package org.hzy.entity; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; /** * Emp entity. @author MyEclipse Persistence Tools */ @Entity @Table(name = "Emp", schema = "SCOTT") public class Emp implements java.io.Serializable { // Fields private Integer empno; private String ename; private String job; private Integer mgr; private Date hiredate; private Double sal; private Double comm; // @Column(name="deptno") // private Integer dept;//单表则可以,且是Integer类型 private Dept dept; @Id public Integer getEmpno() { return this.empno; } public void setEmpno(Integer empno) { this.empno = empno; } @ManyToOne(fetch = FetchType.LAZY, targetEntity = Dept.class) @JoinColumn(name = "deptno") public Dept getDept() { return this.dept; } public void setDept(Dept dept) { this.dept = dept; } public String getEname() { return this.ename; } public void setEname(String ename) { this.ename = ename; } public String getJob() { return this.job; } public void setJob(String job) { this.job = job; } public Integer getMgr() { return this.mgr; } public void setMgr(Integer mgr) { this.mgr = mgr; } public Date getHiredate() { return this.hiredate; } public void setHiredate(Date hiredate) { this.hiredate = hiredate; } public Double getSal() { return this.sal; } public void setSal(Double sal) { this.sal = sal; } public Double getComm() { return this.comm; } public void setComm(Double comm) { this.comm = comm; } public Emp() { } /* public Emp(Integer empno, Integer dept, String ename, String job, Integer mgr, Date hiredate, Double sal, Double comm) { this.empno = empno; this.dept = dept; this.ename = ename; this.job = job; this.mgr = mgr; this.hiredate = hiredate; this.sal = sal; this.comm = comm; }*/ public Emp(Integer empno, Dept dept, String ename, String job, Integer mgr, Date hiredate, Double sal, Double comm) { this.empno = empno; this.dept = dept; this.ename = ename; this.job = job; this.mgr = mgr; this.hiredate = hiredate; this.sal = sal; this.comm = comm; } }3.主配置文件:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>
<session-factory>
<property name="dialect">
org.hibernate.dialect.Oracle9Dialect
</property>
<property name="hibernate.current_session_context_class">
thread
</property>
<property name="connection.url">
jdbc:oracle:thin:@localhost:1521:orcl
</property>
<property name="connection.username">hzy</property>
<property name="connection.password">accp</property>
<property name="connection.driver_class">
oracle.jdbc.OracleDriver
</property>
<property name="myeclipse.connection.profile">
oracle.jdbc.OracleDriver
</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<mapping class="org.hzy.entity.Dept" />
<mapping class="org.hzy.entity.Emp" />
</session-factory>
</hibernate-configuration>
4.测试文件:
package org.hzy.test;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
import org.hzy.entity.Dept;
import org.hzy.entity.Emp;
public class test1 {
/**
* @param args
*/
static Configuration config=new AnnotationConfiguration().configure();
static SessionFactory fac=config.buildSessionFactory();
static Session sess=fac.getCurrentSession();
public static void main(String[] args) {
// TODO Auto-generated method stub
Transaction tr=sess.beginTransaction();
Dept d=(Dept) sess.get(Dept.class, 10);
System.out.println(d.getEmps().size());
// Emp emp=(Emp) sess.get(Emp.class, 7369);
// System.out.println(emp.getDept().getDname());
tr.commit();
}
}
32

被折叠的 条评论
为什么被折叠?



