确保 JIT 不会消除某段代码的最佳方法是什么?我知道它可以通过将我得到的 ID 传递给一个out
流来完成。我只是想知道是否有更优雅的方法来做到这一点?
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;
}