PS:2019年的五一期间,继续毕设中,下午空闲时候出去逛逛…
MVC下网站的搭建
一. 回顾
设计用户注册时,没有对注册是否与数据库冲突进行验证,今天打算使用MVC三层架构,将表示层,业务逻辑层,数据访问层分离,并将注册信息与数据库中验证
二. MVC架构
分层的理念就是将相似的内容放一起去处理,使得开发人员可以只关注一层实现
数据访问层:实现对数据的保存和读取操作
业务逻辑层:是表示层与数据访问层之间的桥梁,负责数据的处理与传递
表示层:即为“用户界面层”,为用户提供一种交互式界面操作
三. 搭建项目三层架构
- 实现模型层:Model
(1) 模型层是数据载体,根据数据库创建模型层,包括用户的实体类以及与相关联的类
(2) 模型层与三层的关系:
a. 表示层需要访问实体对象的属性值
b. 业务逻辑层需要通过实体对象处理业务逻辑
c. 数据层需要通过实体对象读写数据库记录
(3) 模型层命名原则:
项目名:Model
命名空间:解决方案名.Model
类名:用户表users对应用户类users
实体类通常冠以serializable特性,以保证实体传输的可靠性
(4) 实现步骤:
a. 新增类库项目Model
连接到oracle数据库如下:
在oracle数据库中创建user表,在visual studio 2015中查看到
b. 添加其他项目对于实体项目的引用
c. 添加数据表对应的实体类users
文件——添加——新建项目
命名空间改为解决方案名.Models
删除class1.cs类
添加一个users类(与数据库中表名相同)
d. 编写实体类users
将类设为public,接着Ctrl+R,Ctrl+E封装字段
- 实现数据访问层:DAL
(1) 数据访问层:主要实现所有与数据库交互的操作,主要负责数据表的增删改查操作,数据访问层不做逻辑判断
(2) 数据访问层命名原则:
项目名:DAL
命名空间:解决方案名.DAL
类名:用户表users对应用户表数据访问类usersservice
(3) 实现步骤:
a. 新增类库项目DAL
添加-新建项目-类库
修改命名空间名称
删除class.cs
b. 添加对模型层项目Models的引用
c. 添加数据表对应的数据访问类usersservice
d. 编写数据访问类usersservice
- 实现业务逻辑层:BLL
(1) 业务逻辑层:是表示层与数据访问层的桥梁,负责逻辑的判断,业务处理,数据传递等
(2) 命名原则:
项目名:BLL
命名空间:解决方案名.BLL
类名:用户表users对应业务逻辑层类usersmanager
(3) 实现步骤:
a. 新增类库:BLL
删除class.cs
b. 添加对模型层和数据访问层的引用
c. 添加数据表对应的业务逻辑层类usersmanager
d. 编写业务逻辑层类usersmanager
因为是对数据访问层的读取,所以可以把数据访问层的方法复制过来
- 实现表示层:WEB
(1) 负责内容的展示和与用户的交互
(2) 命名原则:
项目名:Web
命名空间:解决方案名.Web
(3) 实现步骤:
a. 新增网站项目Web
由于已有网站website,所以可以只需把下面的引用添加进来即可
b. 添加对模型层和业务逻辑层的引用
c. 设计相关页面,并编写代码