引入
mvc应对小型项目是没问题的,但是对于中型,或者中大型项目就会显得很困窘,因此这里引入三层架构
。
有那三层那?
- 1、数据访问层:直接操作数据库
- 2、业务处理层:根据表现层结合数据访问层处理数据,处理数据。
- 3、表现层:通过客户端的不同请求展现不同的结果。
下面结合具体文件夹分析这三个层。
数据访问层 (Dao文件)
操作数据库的,单一职责,一表一类。
一个表一个类:数据库中的表对应这里的一个类,可以链接数据库对表的操作增、删、改、查操作都在这个类里面。
业务处理层 (Service文件)
接受表现层传入的数据,然后结合数据访问层对数据进行处理,并将处理的结果返回。
业务层要获取不同表种的信息,所以可以操作多张表,同时相当于操作数据层的多个类。
处理相关业务,如:登陆,下面是一个登录的简化过程:
用户将用户名和密码传入后台,后台将数据传入业务处理层,在业务处理层中会调动数据访问层,对接受的数据进行验证,账号密码是否和数据层返回的对应数据的匹配,匹配返回登录成功,不匹配返回登录失败。
表现层 (Web文件)
文件夹内容展示:
- Controllers:根据客户端的请求方式,将数据分发到业务处理层对应的操作。
- Views:放置一些静态的html页面。
- Statics:一些静态的css、js
- Form:自定义的组件
公共层
一些插件,session,from,发邮件等;放置处。
文件夹内容展示:
剩下文件
App.py:程序入口文件。
Mappery.py: 配置文件,其中设置数据库的形式(pymsql和ORM),然后通过依赖注入,然后控制访问数据库的方式。
Config.py:配置文件,如:数据库的账号、密码等。