我有一个问题,即在 Hibernate 之外更新的对象(使用 MySQL Workbench)没有被刷新。发生的情况是我调用 Hibernate 应用程序并检查值,然后使用 Workbench 更新对象的值,保存并检查值是否已设置,并在刷新后在 Hibernate 中进行另一个调用,仍然是旧的价值就在那里。该对象在第三次调用时确实会重新刷新,但我需要立即执行此操作——在这种情况下我无法使用旧数据。
Query q = session.createQuery("SELECT object(o) FROM PortedNumber o WHERE o.number = '" + agiRequest.getDnid() + "'");
List<PortedNumber> portedNumberList = q.list();
if (!portedNumberList.isEmpty()) {
for (PortedNumber portedNumber : portedNumberList) {
session.evict(portedNumber);
session.refresh(portedNumber, LockOptions.READ);
networkId = portedNumber.getNetwork().getId();
logger.info("Number is ported to networkId = " + networkId);
break;
}
}
我更新的值是“portedNumber.getNetwork().getId()”。任何指导都是最受欢迎的
谢谢。