hibernate - .save() 没有保存列表中给出的所有详细信息
问题描述
我有一个大小为 20 的列表,我正在尝试使用 .save() JPA 将其保存到数据库中。但只保存 17 行。保存后,我在数据库中检查只有 17 行得到反映。
可能是什么问题?
这是我的代码片段。
List<MyBean> g=new ArrayList<>();
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
MyBean.add(mybean object);
repository.save(MyBean);
在这里它只在 db 中保存 17 行,而不是全部 20 行。
解决方案
这不是灵魂,而是进一步调试的方法
这就是 List save 实现从内部的样子。
@Transactional
public <S extends T> List<S> save(Iterable<S> entities) {
List<S> result = new ArrayList<S>();
if (entities == null) {
return result;
}
for (S entity : entities) {
result.add(save(entity));
}
return result;
}
你注意到它的返回列表。所以你所有的持久数据也会被返回。
您可以交叉检查缺少哪些实体。
推荐阅读
- python - 如何在网站的python django中的文章中放置标签
- botframework - 如何从 Microsoft Bot Service 获取所有 Carousel 数据?
- javascript - 翻译js构造(对象)
- php - 在 Woocommerce 中保存自定义属性字段
- java - 如何使用 *class 文件生成 .jar 的 android 库?
- javascript - Flask/html - 在 Enter 键上只提交一个按钮
- python - plt.subplot 制作空图
- mysql - MySQL 通过函数获取字段的值
- javascript - 如何最好地解析成分列表中的每一项,并根据每个解析结果创建一个新对象?
- db2 - 从 java 程序中读取 MVS DataSet