当前位置: 首页 > 面试题库 >

Hibernate Envers-不为createQuery(...)。executeUpdate()编写审核记录,仅.persist()和.merge()

微生阳平
2023-03-14
问题内容

我有3种方式将内容写入数据库

public void create(T object) {
    entityManager.persist(object);
}

public void update(T object) {
    object = entityManager.merge(object);
}

public int updateStatus(String id, String status) {

    final int changes =
                entityManager.createQuery("update item set state = :newState," +
                        " last_modified = current_timestamp" +
                        " where id = : id ")
                    .setParameter("newState", status)
                    .setParameter("id", id)
                    .executeUpdate();

            return changes;
}

我遇到的问题是为了让Hibernate Envers实际将审核记录写入相应的x_aud和revinfo DB表中。它仅适用于“ .persist()”或“
.merge()”。我无法使其适用于’createQuery(…). executeUpdate()

我是否缺少某些东西,或者只是无法使用?问题是,我的很多代码都是使用.executeUpdate编写的而不是合并的,所以我确实需要使用它来处理现有代码。

有人可以帮忙吗?


问题答案:

看起来 Avinash T. 是正确的-如果要创建本机SQL查询,请使用的createNativeQuery(String sqlString)方法EntityManager。使用createQuery(String ejbqlString)如果您正在使用EJB
QL是唯一可能的。希望这会有所帮助。



 类似资料:
  • 问题内容: 我有3种方式将内容写入数据库 我遇到的问题是为了让Hibernate Envers实际将审计记录写入相应的x_aud和revinfo DB表中。它仅适用于“ .persist()”或“ .merge()”。我无法使其适用于’createQuery(…). executeUpdate() ‘ 我是否缺少某些东西,或者只是无法使用?问题是,我的很多代码都是使用.executeUpdate编

  • 接口说明 审核用户的注册申请 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 POST /api/user/1.0.0/check 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 guid string form 是 用户ID status int form 是 用户状态[0:未审核;1:已审核] 响应字段说明 无 响应

  • 小程序审核规范 为保护用户权益及京东小程序平台安全,并方便小程序开发者对平台审核规则进行了解,京东制订京东小程序审核规范(以下简称“本规范”)。除本规范外,服务商还应遵守《京东小程序平台服务条款》(以下简称“平台服务条款”)、小程序运营规范及京东修订或公布的相关协议、规则与规范。 一、小程序基本信息审核 1.京东小程序的基本信息,其中包括小程序名称、介绍、图标等均不可: (1) 侵犯他人的著作权、

  • 审核发布流程 第一步:上传代码包 开发完成后,开发者在开发管理中通过手动点击“上传代码包”的方式提交开发版本。京东小程序允许多次上传代码包,重新上传后将覆盖之前的版本。 在提交审核之前可以将您的京东小程序设置为体验版本,让部分用户先体验小程序。 第二步:提交审核 代码包上传成功后,并且小程序功能研发和测试完毕,通过点击“提交审核”,将当前的开发版本提交审核。可以在审核版本中看到,当状态为“审核中”

  • 工单审核 实时刷新开关默认打开,如需删除记录请先关闭该开关。 如定时工单的时间小于当前时间,执行该工单将会立即执行(请确保Yearning所在环境时区与使用者时区一致,否则会导致定时执行异常!) 目前仅支持延时工单中止,其他工单执行后无法中止! 执行成功的工单可点击执行信息按钮后查看回滚语句 查询审核 点击全部中止按钮将会中止所有用户的查询权限 如没有在设置页面开启查询审核开关,则默认用户查询申请