Algorithm 向数据库中添加所选表行的优化算法

Algorithm 向数据库中添加所选表行的优化算法,algorithm,Algorithm,我试图在一个支持JavaBean中应用一个save方法,它将获取所选的表行并将它们保存在数据库中。但是,假设用户稍微更改了他的选择(更改了5个选择中的1个)。我想知道我将要应用的算法,从长远来看,它是否影响效率 下面是: 每次用户单击按钮(保存),我都会删除他以前的所有选择,并将所有当前选择插入数据库 单击按钮后,查看用户取消选择了哪些行,并从数据库中删除了哪些行,然后添加新的行 选择2比选择1好还是不好……或者选择不超过15并不重要 谢谢我肯定会选择选项2,尝试计算出您需要执行的最小操作数 然

我试图在一个支持JavaBean中应用一个save方法,它将获取所选的表行并将它们保存在数据库中。但是,假设用户稍微更改了他的选择(更改了5个选择中的1个)。我想知道我将要应用的算法,从长远来看,它是否影响效率

下面是:

  • 每次用户单击按钮(保存),我都会删除他以前的所有选择,并将所有当前选择插入数据库
  • 单击按钮后,查看用户取消选择了哪些行,并从数据库中删除了哪些行,然后添加新的行
  • 选择2比选择1好还是不好……或者选择不超过15并不重要


    谢谢

    我肯定会选择选项2,尝试计算出您需要执行的最小操作数

    然而,在截止日期等时间内,退回到选项1是相当正常的,因为它更容易实现

    然而,要弄清楚这些变化是什么并不难,因为在我看来,您并不是在改变行本身。要么删除已清除复选标记的项目,要么插入已设置复选标记的项目

    只需存储数据库中任何内容的主键值列表,然后在用户希望保留更改时,在迭代新列表时与该列表进行比较

    这里的最小工作解决方案还意味着,在重构、更改或添加方面,您将更加经得起未来的考验。例如,如果将来有数据附加到这些行中的任何一行,该怎么办。你也需要保留它。一般来说,我有点反对仅仅为了“如果”而编写代码,但在这里,我觉得它更像是“你为什么不……”

    所以我的建议是选择2。没有更多的工作