jpa 一句保存,下一句读取。怎么让第二句不会空指针呢??读取是null呢?

发布于 2022-09-03 23:45:17 字数 261 浏览 10 评论 0

newBus = busRepository.save(newBus);
    OrderBLOBs record = orderService.selectByKey(bus.getId())

这里因为 大概同时进行,,第一句没保存完,第二局就读取了。然后record总是null。导出其他地方报错。
请问,怎么避免空指针。

有人说,,第一句之后 提交事务。怎么提交事务???

这两句都是读取同一个 数据库的表。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撞了怀 2022-09-10 23:45:17

我来救一下场~~~估计这里的问题是涉及到一个持久化上下文的问题!
1.持久化上下文的生命周期和系统事务一致
2.持久化上下文提供自动脏检查
3.持久化上下文是一级缓存
(上面内容就要靠你自己百度了)
先自动注入

@Autowired
private PlatformTransactionManager transactionManager;
public void test(){
TransactionStatus status = transactionManager.getTransaction(new DefaultTransactionDefinition());
//newBus哪里来的
Bus bus = busRepository.save(newBus);
OrderBLOBs record = orderService.selectByKey(bus.getId());
transactionManager.commit(status);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文