zoukankan      html  css  js  c++  java
  • 使用Hibernate框架,新增数据后如何返回新增数据的全部信息

    一.需求描述:一个修改事物(TRANSACTION)先后包括子事物修改和子事物新增,修改事物完成后返回其子事物新增的全部数据

     二.实现:若实现修改对象后还需要新增一个新对象,并返回新对象的需求,保存后返回Serializable对象,使用String.valueOf()方法转换为String再转换为Integer得到新增数据的Id,根据Id进行查询。

    三.代码实现:

    public Object saveObject(Object object){
    Object newObject=null;
    Session session = sessionFactory.openSession();
    Transaction trans = session.beginTransaction();
    Serializable a=session.save(object);
    int newObjectId=Integer.parseInt(String.valueOf(a));
    StringBuilder queryObject=new StringBuilder("select new Object (attribute1,attribute2,attribute3,....) from Object obj where obj.id=:id");
    String queryScHql=queryObject.toString();
    Query query=session.createQuery(queryObject);
    query.setParameter("id",newObjectId);
    newObject=query.uniqueResult();//返回Object类型,具体类型需要强转,即(类型)query.uniqueResult()
    trans.commit();
    session.close();
    return newObject;
    }

  • 相关阅读:
    1.2顺序表
    1.1数据结构
    Java 造假数据
    Python造假数据,用这个库
    真香 用这七大Python效率工具
    mybatis 详情
    MySQL 的 INSERT ··· ON DUPLICATE KEY UPDATE
    mysql之case when then 经典用法
    SELECT NOW(),CURDATE(),CURTIME()
    MySQL CONCAT_WS 函数
  • 原文地址:https://www.cnblogs.com/communist/p/5949965.html
Copyright © 2011-2022 走看看