这跟MVC没什么太大关系啦
就系统设计面的问题
七次的DB原子性操作
简单的做法就是一次全做
失败全部rollback
那怎么分七次就是个问题
还有使用者体验要做到怎样
可以填四张表出去吃个饭再回来补剩下的三张吗
这些都影响到设计的方式
如果表是小的能很快的按下一步
那就是由前端累积一次的ajax也无妨
如果表大
搞不好填到第六张
出什么状况麻烦你重填
可能使用者就火大了
有暂存必要
那可能就得靠session暂存
为了scalable系统没在用session的
那想办法搞个redis来暂存
没办法架redis
那最后手段IO暂存
简单来说所有动作都存起来
最后对DB做一次性的操作
存在哪边就看你系统本身适合暂存在哪
※ 引述《a88241050 (再回头已是百残身)》之铭言:
: 最近工作上刚写了一支程式
: 当整个程式流程跑完
: 我总共需要insert和update7个table
: 然后我每次对table做操作都会透过ajax传
: json物件呼叫controller的方法
: 每个controller再调用service的insert或update
: 所以我一个流程就会发送7次ajax需求呼叫controller
: 现在程式写完遇到两个问题
: 一个是程式执行时间有点久..
: 一个是若程式出错没办法把资料还原
: 后来有人告诉我我应该把全部流程包在一个controller的方法里
: 请问这样就能解决了吗?
: 还是应该写在service里?