使用jpa的时候进行数据的插入怎么弄

2025-11-19 09:44:13

1、 JPA和HIBERNATE均属于ORM框架,两者在使用上也很相似,尤其是原理上。除了这两种操作DB的工具外,我们还可能使用到Serialization 、JDBC、ODB 、EJB2 、JDO等。

使用jpa的时候进行数据的插入怎么弄

使用jpa的时候进行数据的插入怎么弄

2、此处仅简单通过JPA插入一对关系数据进行了解JPA的使用。对于一对多关系,从Object角度将,关系可能维护在多的一方,也可能维护在一的一方;从DBTable的角度将,则是多的一方维护着关系。

使用jpa的时候进行数据的插入怎么弄

使用jpa的时候进行数据的插入怎么弄

3、 JPA是java规范,使用JPA离不开下面几个常用类。

javax.persistence.Persistence;


javax.persistence.EntityManagerFactory;
javax.persistence.EntityManager;
javax.persistence.Query;

使用jpa的时候进行数据的插入怎么弄

使用jpa的时候进行数据的插入怎么弄

4、 假设任务信息TItem和历史信息THist是一对多关系。假设一种场景需要存储多条任务信息,而且每种任务信息会携带多个相同的历史信息,此种情景可以简化理解为多次存储一对多关系(简单对比一下此种场景的如下说法:每种任务信息携带多个历史信息、每种任务信息携带多个不同的历史信息)。

使用jpa的时候进行数据的插入怎么弄

5、EntityManagerFactory emf = Persistence.createEntityManagerFactory("your_unit");


  EntityManager emMy = emf.createEntityManager();
  
  try{
   emMy.getTransaction().begin();
   for(String docId:docIdList){
    /**
     * 设置任务
     */
    tItem = new TItem();
    //设置ID
    tItem.setDocId(docId);

使用jpa的时候进行数据的插入怎么弄

使用jpa的时候进行数据的插入怎么弄

6、    tItem.setDispDate(new Timestamp(System.currentTimeMillis()));


    //保存一
    emMy.persist(tItem);
    
    //创建保存履历表,同时关联任务
    for(String disDTO: FormInfoList){
     /**
      * 设置履历表各项信息
      */
     tHist = new THist();
     ……
     tHist.setTItem(tItem);
     //保存多
     emMy.persist(tDispHist);
    
   }
   //提交
   emMy.getTransaction().commit();
  }catch(Exception e){
   e.printStackTrace();
   em.getTransaction().rollback();
  }finally{
   if(emMy.isOpen()){
    emMy.close();
   }

使用jpa的时候进行数据的插入怎么弄

使用jpa的时候进行数据的插入怎么弄

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢