java - Spring Boot JPA OneToOne 参考 - 空参考的 TransientPropertyValueException
问题描述
我有一个带有 JPA 和 Thymeleaf 的 Spring Boot 应用程序。我使用 2 个实体和一个可为空的OneToOne 引用。但是我在保存第一个实体而不引用第二个实体时遇到了问题。在界面中,输入字段为空,但在提交表单时,引用填充了一个新对象。当我现在保存第一个对象时,我得到一个 TransientPropertyValueException。
JPA bean 参考:
@OneToOne(optional = true)
@JoinColumn(name = "sellId", referencedColumnName = "id", nullable = true)
private Sell sell;
输入字段
<div class="form-group row">
<label for="value" class="col-sm-2 col-form-label">SellId</label>
<div class="col-sm-10">
<input type="text" class="form-control " th:field="*{sell.id}" id="sellId" placeholder="-">
</div>
</div>
提交对象
这是提交给存储库控制器的对象。
例外:
org.hibernate.TransientPropertyValueException: object references an unsaved transient instance - 在刷新之前保存瞬态实例:
预期对象
我想要的是这样的:
我很感激任何解决问题的建议。谢谢
解决方案
推荐阅读
- python-3.x - 将字符串列表解析为相应的对象
- javascript - 单击每一行时的css过渡
- apache-spark - 缓慢加入pyspark,尝试重新分区
- ansible - 如何从变量 ['vars'] 在 Ansible 查找插件中获取完全评估的变量值
- python-3.x - 从python3中的url打开一个gzip文件并使用islice
- node.js - 运行“heroku logs --tail”后无法输入
- telegram-bot - Telegram bot - 仅适用于我,但不适用于其他用户
- javascript - Jest 使用之前测试中加载的模块
- amazon-cognito - 我什么时候应该在 AWS Cognito 中使用 adminCreateUser 和 signUp
- flutter - 如何在flutter中自定义carousel_slider?