【发布时间】:2020-06-19 09:53:53
【问题描述】:
我想使用 Spring 将对象列表保存到数据库中。在我的控制器中,我收到一个字符串列表,说这些是城市。我过滤掉重复的并拥有一个独特的Set 城市。当我对 city 列有唯一约束时,如何插入该设置数据库?
我在这里看到三个选项:
在任何插入之前,我都会检查是否已经有这样的记录,如果没有,我会保留域对象。
我尝试持久化对象域对象而不检查它是否存在于数据库中。当我遇到 SQL 异常时,我尝试保存另一个域对象。
我从数据库中检索所有对象(记录列表肯定会超过 10 万条),然后创建一组唯一的(数据库中不存在的)域对象,然后将它们保存到数据库中。
有什么选择?有(希望)更好的选择吗?
【问题讨论】:
-
您能否创建一个全局临时表或访问一个可以暂存数据的空表?对于这样的操作,总是最好在数据库端进行处理
-
是的,我可以做到这一点。
标签: sql spring oracle hibernate spring-data