传统的客户机/服务器结构 数据库服务器 数据库 客户向服务器请求 数据库服务 服务器(数据)层 客户层 国 Client Client Client 20
20 传统的客户机/服务器结构 数据库 Client Client Client 数据库服务器 服务器(数据)层 客户层 客户向服务器请求 数据库服务
传统的客户机/服务器结构 数据库 数据库服务器 存储过程 数据库 客户向服务器请求 数据库服务 服务器(数据)层 客户层 国 Client Client Client 21
21 传统的客户机/服务器结构 数据库 Client Client Client 数据库服务器 服务器(数据)层 客户层 客户向服务器请求 数据库服务 数据库 存 储 过 程
2层结构的缺陷 数据库 存储过程 数据库服务器 数据库 客户向服务器请求 数据库服务 服务器(数据)厚 客户层 Client Client Client 户界面代 业务逻辑代码 22
22 2层结构的缺陷 数据库 Client Client Client 数据库服务器 服务器(数据)层 客户层 客户向服务器请求 数据库服务 数据库 存 储 过 程 用 户 界 面 代 码 业 务 逻 辑 代 码
2层结构的缺陷 数据库 存储过程 数据库服务器 数据库 客户向服务器请求 数据库服务 服务器(数据)层 客户层 用户界面代码 业务逻辑代码 Client Client Client 口缺点 ■系统的可维护性不好 ■客户端的负担仍比较重 >客户端包含过多的商业逻辑 >仍然需要客户端进行较复杂的数据敔处理 >商业逻辑与人机交互界面交织在一起 ■客户端的可移植性不好 ■ 数据的安全性不好 >处理复杂必然牵涉更多的移植性问题 ·需要更合理的工作分配3层或多层结 每个客户端上都要安装数据库驱动程序 构 23
23 2层结构的缺陷 缺点 ◼ 客户端的负担仍比较重 ➢ 仍然需要客户端进行较复杂的数据处理 ◼ 客户端的可移植性不好 ➢ 处理复杂必然牵涉更多的移植性问题 ➢ 每个客户端上都要安装数据库驱动程序 ◼ 系统的可维护性不好 ➢ 客户端包含过多的商业逻辑 ➢ 商业逻辑与人机交互界面交织在一起 ◼ 数据的安全性不好 ◼ 需要更合理的工作分配 3 层或多层结 构
典型的3层结构 数据库服务器 数据库 数据库 中间层服务器向数 存储过程 据库服务器请求 服务器(数据) 中间层 中间层 应用程序 客户向中间层服务 器请求 中间层 客户层 用户界面代码 务逻辑代码 Client Client Client 24
24 典型的3层结构 数据库 Client Client Client 数据库服务器 服务器(数据)层 中间层 中间层服务器向数 据库服务器请求 中间层 应用程序 中间层 客户层 客户向中间层服务 器请求 数据库 存 储 过 程 用 户 界 面 代 码 业 务 逻 辑 代 码