个人网站www.pixysoft.net设计系列: 数据库同步的实现
个人网站www.pixysoft.net设计系列: 数据库同步的实现
Iteration 1
.对于本地新增的数据,版本号全部为0
.上传成功后,版本自动加1
.上传失败则直接返回(Web V <= Local V)
.下载成功后,修改本地版本号
.下载失败,直接返回(Web V >= Local V)
Interation 2
.CVCL放在本地端.
.本地直接操作数据库的时候不修改版本(新增的数据自动设0)
.当确定同步的时候,本地数据版本+1,然后上传.如果成功则保存两地版本
.如果失败,则返回失败信息通知处理
Interation 3
.在数据库字段里面添加mark字段,表示是否被修改.
.上传的时候读取mark字段,作为上传内容.
.上传/下载成功后,mark字段自动被设置为false。
.本地数据Insert/update的之后自动设置Mark = true
Interation 4
。在WebDatabase数据库操作类里面增加对mark的控制
。写一个CVController: 放在Database上面.里面提供了与Database一样的接口,通知增加了额外的操作
//Database Method
public Insert / change the mark for the data.
public Update / change the mark for the data.
private ActivateMark
private DeActivateMark
private InitVersion / When create a new data, it should initiate the version for that data.
//Net work method
public Download / download the data from Web: get local data according to the download data, compare the version, insert / update the correct data and list the error data.
public Upload / upload the data to the Web: select all the markTrue data, increate the version and upload.
private IncreateVersion / When upload, the data should pass this method to increate version.
private CompareVersion / When download, the data should be compared with those in local database, and list the conflict ones.
Interation 5 数据删除
。当本地删除了数据,如果是Download,则直接插入/ 如果是Upload,则提示是否删除目标数据
。目标删除了数据(默认为没添加数据),Download 则提示是否删除本地数据.Upload则直接插入
to be continued ...
转载于:https://www.cnblogs.com/zc22/articles/555389.html
个人网站www.pixysoft.net设计系列: 数据库同步的实现相关推荐
- 大型网站架构设计系列总结
大型网站架构设计系列-我的总结如下: 1. 数据结构和产品架构设计,这是基础! 2. 角色分开,各司其职(web服务器,缓存服务器,负载平衡,数据库等) 3. HTML静态化(用缓存服务器也可) 4. ...
- 数据库设计系列[04]组织结构加入权限系统
1引言 接着上一篇随笔"数据库设计系列[03]权限系统":在上篇随笔中,只是简单地介绍基于角色和操作访问控制模型,能把权限控制到页面和按钮.CDM图: 2 新的需求:组织结构 比如 ...
- java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档
java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档 java计算机毕业设计旅游网站设计源代码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软 ...
- UML设计系列(8):数据库关联关系图
传送门 UML设计系列(1):状态机图 UML设计系列(2):类图 UML设计系列(3):时序图 UML设计系列(4):用例图 UML设计系列(5):系统依赖图 UML设计系列(6):活动图 UML设 ...
- 【IT名人堂】一个神奇的网站:58同城背后的数据库设计实践
大家好,我是主持人皮皮,欢迎大家做客第116期名人堂.58同城,一个被贴上"神奇"标签的网站,海量信息背后到底支撑的数据库是什么?当并发访问量相当密集的时候,这些数据库系统都会采取 ...
- .NET企业级应用架构设计系列
一..NET企业级应用架构设计系列之技术选型 这里说的技术选型实际上是指技术方向的选择,或者叫平台方案的选择,也或者叫技术路线等,总之是大方向的把握.假定项目背景是要做一个中型WEB系统,公司组建新的 ...
- 软件设计之 数据库设计
[按语:在软件设计或是动态网站开发中,数据库设计时很重要,我觉得可以说是开发工作的核心部分,所以学好数据库设计,是很重要的,也是大有前途的...] ◆.概念 首先要搞清楚容易混淆的两个概念:&quo ...
- .NET企业级应用架构设计系列之应用服务器
本文属spanzhang(张友邦)原创,发布地址为:http://blog.csdn.net/spanzhang.转载或引用请注明原文之出处,谢谢! .NET企业级应用架构设计系列之开场白 .NET企 ...
- java动漫网站开题报告_基于java的校园论坛网站的开发与设计开题报告.doc
基于java的校园论坛网站的开发与设计开题报告 太 原 科 技 大 学 华 科 学 院 毕业设计开题报告 学 生 姓 名:学 号:学 院.系:专 业:论 文 题 目:指导教师: 2015 年 3 月1 ...
最新文章
- 认识Web前端、Web后端、桌面app和移动app新开发模式 - 基于Node.js环境和VS Code工具...
- 今天看到这篇新闻之后,决定休息一下咯
- 网络推广平台浅析通常网站关键词优化密度该如何把控呢?
- 标准成本、目标成本、实际成本
- C语言 满分代码:L1-043 阅览室 (20分)(解题报告)
- HDU 5573 Binary Tree 构造
- AutoCAD .net 二次开发官方教程及源码C#版(4)-(源码下载)
- 使用mkdir创建同级多目录
- 用maven搭建多模块项目
- 中无法打开源文件_Safari浏览器无法打开,如何解决Safari在Big Sur中崩溃的情况...
- web memory
- treeview wpf代码设置选中_C# WPF过渡效果实现(Transitions)
- Linux中线程使用详解
- λ^n |λI−AB|= λ^m |λI−BA|
- android深度探索第二章
- 项目管理软件之禅道和JIRA的共同点与区别
- 各品牌智能电视刷机怎么寻找对应固件包?详细图文教程分享
- 画二元函数即三维图像的函数及matlab代码
- 门函数卷积_卷积及其应用
- macOS Monterey 12.6.1 (21G217) 正式版 ISO、IPSW、PKG 下载
热门文章
- 南华大学编译原理----词法分析器的设计与实现、语法分析器的设计与实现
- 杭电计算机学院复试真题,2020杭州电子科技大学计算机学院考研复试公告
- C语言——指针(入门详解)
- 设计行业高效办公秘籍——趁手的设计软件
- IT招标书(医疗商务平台)
- python物联网工具
- C# Winform应用程序占用内存较大解决方法整理(转)-- SetProcessWorkingSetSize
- linux环境变量应该配置在哪里?
- Vivado Error: (vlog-7) Failed to open design unit file
- 2023泰迪杯数据挖掘赛B题完整成品讲解