欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

普通的CRUD操作需要走业务层吗?

程序员文章站 2022-06-07 12:46:15
...
普通的CRUD操作需要走业务层吗?
实际情况是直接用Active Record提供的create、delete、update、find方法就能搞定

回复内容:

普通的CRUD操作需要走业务层吗?
实际情况是直接用Active Record提供的create、delete、update、find方法就能搞定

一般CURD在MODEL做
S层做一些复杂的事情

单个实体的CRUD是放在DAO里做的,Service层再调用这些CRUD方法。

普通的就不需要业务层了,用 Rails 通用的做法就行了。

可以参考下InitPHP框架的分层说明:
http://initphp.com/3_2.htm

MVC分层是开发比较常用的分层方式,也是比较合理通用的方式.
MVC分层将Web分成三层: 模型层,控制层,视图层.
MVC分层将PHP代码和HTML进行了分离,使项目更加整洁和清晰.
InitPHP默认采用DSCV的分层方式,同样也支持MVC分层,DSCV方式将MVC分层的M层分成DAO和Service层.
使用MVC分层,只需要在Controller中直接调用InitPHP::getDao()的类就能实现.

DSCV分层: Dao(数据层),Service(业务服务层),Controller(控制层),View(视图层)
DSCV分层最大的特点是将MVC的模型层Model分离成Dao数据层和Service服务层.
DSCV分层的好处是让各个层次的职责更加明确,数据层更加专注数据操作(SQL操作,缓存操作),业务服务层更加专注提供控制层通用的函数接口.
Service一般是针对业务的,例如用户类UserService,将提供用户注册,用户信息修改等接口,Service可以让Controller来调用.
Service中获取数据通过Dao来实现,一个复杂的Service会对应多个Dao.