0

特定のコードがJITによって削除されないようにするための最善の方法は何ですか?outたとえば、取得したIDをストリームに渡すことで実行できることはわかっています。もっとエレガントな方法があるのだろうか?

public User getUser(Long id) throws EntityException {
    User user = super.get(id);
    for (UserAnswer userAnswer : user.getUserAnswers()) {
        userAnswer.getPossibleAnswer().getId(); //I DO NOT WANT THIS LINE TO BE REMOVED
    }
    return user;
}

ありがとう

追加情報: Hibernate.initializeは問題を修正します。したがって、以下のコードはエラーなしで機能します。少なくとも、上記のコードほど速くは再現されません。

public User getForAlgorithm(Long id) throws EntityException {
    User user = super.get(id);
    for (UserAnswer userAnswer : user.getUserAnswers()) {
        Hibernate.initialize(userAnswer.getPossibleAnswer());
    }
    return user;
}
4

0 に答える 0