Hibernate の外部で (MySQL Workbench を使用して) 更新されたオブジェクトが更新されないという問題があります。何が起こるかというと、Hibernate アプリケーションを呼び出して値を確認してから、Workbench を使用してオブジェクトの値を更新し、保存して値が設定されていることを確認し、リフレッシュ後に Hibernate で別の呼び出しを行い、古いままです。価値はそこにあります。オブジェクトは 3 回目の呼び出しで更新されますが、これをすぐに行う必要があります。このインスタンスで古いデータを使用する余裕はありません。
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()」です。どんなガイダンスでも大歓迎です
ありがとう。