益云养生网 养生怪杰魏伟 食疗养生御膳缘 易太极养生馆 葛美养生粥 于洋养生 三奇堂养生健肝茶 栾加芹养生论坛 刘太医谈养生
ad

益云养生网

你的位置:主页 > 于洋养生 >

rb39.com:一个“保存”按钮同时存在“增删改”三种操作,该如何去实现?

  •      益云养生网
  • 发表时间:2019-07-28 08:25:04
  • 作者:刘益云
"\u003Cdiv\u003E\u003Cp\u003E\u003Cstrong\u003E稿件来源:阿里云开发者社区(点击文章最下方“了解更多”)\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E一般情况下,对表格中的数据进行“增删改”操作,都是直接操作数据库。现在有些项目因为设计或者优化的缘故,不对表格中的数据进行“增删改”,而是通过最后“保存”按钮的操作,一次性将数据\u003Cspan\u003E传至\u003C\u002Fspan\u003E服务器,由服务器对数据进行“增删改”。\u003C\u002Fp\u003E\u003Cp\u003E以下通过给用户分配角色这样的功能进行说明。\u003C\u002Fp\u003E\u003Cp\u003E操作界面大致如下(直接\u003Cspan\u003E手画\u003C\u002Fspan\u003E,略显粗糙,能看明白就行):\u003C\u002Fp\u003E\u003Cdiv class=\"pgc-img\"\u003E\u003Cimg src=\"http:\u002F\u002Fp1.pstatp.com\u002Flarge\u002Fpgc-image\u002F6ca44d66bb504753b362aff484cf0fd1\" img_width=\"203\" img_height=\"190\" alt=\"一个“保存”按钮同时存在“增删改”三种操作,该如何去实现?\" inline=\"0\"\u003E\u003Cp class=\"pgc-img-caption\"\u003E\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E\u003Cp\u003E 说明:\u003C\u002Fp\u003E\u003Cp\u003E· “新增”、“修改”和“删除”都不是直接操作数据库。\u003C\u002Fp\u003E\u003Cp\u003E· 点击“保存”时才将数据传给服务器。\u003C\u002Fp\u003E\u003Cp\u003E· \u003Cstrong\u003E此项目中的删除均为逻辑删除(即,只是对数据打上“删除”状态的标记),不是物理删除。\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 文中说的“ID”为用户角色的主键。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E第一种方法:先删后增\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 直接删除用户下的所有角色,将前端传过来的数据统一新增。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E优缺点:\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 优点:逻辑简单,容易实现。\u003C\u002Fp\u003E\u003Cp\u003E· 缺点:会产生大量的删除数据。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E第二种方法:通过有无 ID 进行操作判断\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 过滤数据:通过 stream 过滤出无 ID 的数据和有 ID 的数据。\u003C\u002Fp\u003E\u003Cp\u003E· 新增:无 ID 的数据均为新增的数据,在服务器中直接对这些数据进行新增操作即可。\u003C\u002Fp\u003E\u003Cp\u003E· 修改和删除:查询出用户所有的角色,将查询出来的ID(ID_A)与前端传过来的有ID的数据(ID_B)进行比对,交集(即 ID_A 与 ID_B都有的数据)即为修改,差集(即 ID_A 有的数据,在 ID_B 中没有)即为删除。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E优缺点:\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 优点:影响的数据量较少\u003C\u002Fp\u003E\u003Cp\u003E· 缺点:实现起来比较复杂\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E第三种方法:前端部分分类\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 前端分类:前端将被逻辑删除的数据保存在 delete 对象中。\u003C\u002Fp\u003E\u003Cp\u003E· 数据上传:将表格中的数据(包含有新增的数据和修改的数据)和 delete 对象中的数据一起上传至服务器。\u003C\u002Fp\u003E\u003Cp\u003E· 后端分类:将表格中的数据分为有 ID 的数据和无 ID 的数据。\u003C\u002Fp\u003E\u003Cp\u003E· 增删改操作:无 ID 的数据进行新增,有 ID 的数据进行修改,delete 对象中的数据进行删除。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E优缺点:\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 优点:影响的数据量较少,前端的分类操作比较容易,后端的分类操作和增删改操作也比较容易。\u003C\u002Fp\u003E\u003Cp\u003E· 缺点:后端仍需要进行分类操作。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E第四种方法:前端全分类\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 前端分类:前端将需要进行新增、修改和删除的数据分别放到 add 对象、update 对象 和 delete 对象中。\u003C\u002Fp\u003E\u003Cp\u003E· 数据上传:将分类之后的数据上传至服务器。\u003C\u002Fp\u003E\u003Cp\u003E· 后端增删改操作:对 add 对象中的数据进行新增,对 update 对象中的数据进行修改,对 delete 对象中的数据进行删除。\u003C\u002Fp\u003E\u003Cp\u003E\u003Cstrong\u003E优缺点:\u003C\u002Fstrong\u003E\u003C\u002Fp\u003E\u003Cp\u003E· 优点:影响的数据量较少,后端容易实现。\u003C\u002Fp\u003E\u003Cp\u003E· 缺点:前端实现较难。\u003C\u002Fp\u003E\u003C\u002Fdiv\u003E"'.slice(6, -6),
ad
  • 养生怪杰魏伟,食疗养生御膳缘,易太极养生馆,葛美养生粥,于洋养生,三奇堂养生健肝茶,栾加芹养生论坛,刘太医谈养生