# Web 分层思想
在现代的 Web 开发中,分层的思想非常的重要,体现了软件复用的重要理念。
从 MVC 层 → 服务层(Service) → 数据访问层(DAO) → 持久化数据层(DB) ,通过数据与业务的层层剥离,减少了代码之间的耦合。
![](https://box.kancloud.cn/eec2fc401295913d8440ce1393d533e3_500x384.png)
* MVC 层
完成页面请求和数据传递的过程,着重在于请求逻辑的实现。
* Service 层
完成核心业务点的数据处理,用于被 Controller 调用,具体的数据持久化分散的交给 DAO 去完成。
* DAO 层
衔接数据库,完成数据实体对象的单个数据库操作,称为数据访问对象。
## 按照分层思想构建的代码
**包结构示例**
~~~
└─cn
├─controller
├─dao
├─filters
├─model
├─service
└─utils
~~~
> 为了避免 Service 和 DAO 层对象实例的多度浪费创建,使用了单例的设计模式构建 Service 和 DAO 的对象。