注解用到的jar包:下载地址
/**
* ========================================================================* 注解
* 步骤:
* 1.导入jar包
* (1)hibernate-annotations.jar
* (2)hibernate-commons-annotations.jar
* (3)ejb3-persistence.jar
* 2.使用注解配置持久化类级对象关联关系
* 3.使用AnnotationConfiguration建立会话工厂
* sessionFaction=new AnnotationConfiguration().configure().buildSessionFactory();
* 4.在hibernate配置文件中(hibernate.cfg.xml)中生成持久化类
* <mapping class="持久化类完整限定名">
* ========================================================================
*
*/
@Testpublic void test1(){//必须先在数据库里面创建序列,名字是seq_emp_idSession session=new AnnotationConfiguration().configure().buildSessionFactory().openSession();Transaction tx=session.beginTransaction();Emp1 emp1=new Emp1();emp1.setEname("test2");emp1.setHiredate(new Date());session.save(emp1);tx.commit();}
//测试多对一的配置注解@Testpublic void test2(){Session session=new AnnotationConfiguration().configure().buildSessionFactory().openSession();Emp1 emp1=(Emp1) session.get(Emp1.class,7788);System.out.println(emp1.getEname()+","+emp1.getDept().getDname());}//级联操作@Testpublic void test3(){Session session=new AnnotationConfiguration().configure().buildSessionFactory().openSession();Transaction tx=session.beginTransaction();Dept1 dept1=new Dept1(1,"产品部");Emp1 emp1=new Emp1();emp1.setEname("Villy");emp1.setHiredate(new Date());dept1.getEmps().add(emp1);emp1.setDept(dept1);session.save(dept1);tx.commit();}