java - 休眠:HTTP 状态 500 - 内部服务器错误
问题描述
下面是我的休眠代码:
SessionFactory sessionFactory;
Session session = null;
LoginEntity user = null;
try {
sessionFactory = HibernateUtility.getSessionFactory();
session = sessionFactory.openSession();
session.beginTransaction();
user = session.get(LoginEntity.class, user_id);
System.out.println(user.getUserCountryMapping()); // if I remove this line I get error..
session.getTransaction().commit();
return user;
} catch (Exception e) {
Logger.getLogger(BulkActionMethods.class.getName()).log(Level.SEVERE, null, e);
} finally {
if (session != null) {
session.close();
}
}
我的代码遇到了一个奇怪的问题,当我删除该System.out.println(user.getUserCountryMapping());
行时,我HTTP Status 500 - Internal Server Error
在浏览器上遇到错误,但是当我写这行时,我JSON
在浏览器上得到了明确的响应。请有人帮助我理解这个问题。
解决方案
在没有看到错误或您的实体映射的情况下,很难给出明确的答案。
然而,像这样的情况几乎总是由于未初始化的惰性集合。该行:
System.out.println(user.getUserCountryMapping());
Hibernate
获取该关系中的数据。如果您不在Hibernate
会话中执行此操作,然后稍后尝试依赖此关系,您将获得一个LazyInitializationException
,如果未处理,它将是 HTTP 状态 500。
推荐阅读
- python - 直接从模型工件进行部署
- javascript - ts 构建问题:找不到名称“Iterable”和许多其他问题
- python - 正则表达式从段落中分别提取标题和文本
- java - 优化 1-0 背包问题以最大化重量而不是价值
- python - 如何在 pandas Dataframe 中找到某列的值至少为 0.5 的 5 个连续行
- javascript - 如何在 React Native 中验证动态表单?
- python - 使用键表达式解析字符串
- python - 使用 setuptools 独立于操作系统安装脚本
- python - 在 Python 中处理来自 Node.js 的实时数据
- wordpress - 自定义帖子类型的永久链接不起作用,我不知道为什么