后台模块主要是针对管理员设计的,管理员在进入管理界面后,可以对网站的用户和信息进行管理,增删图书信息类别﹑友情链接﹑推荐书籍信息、管理书籍分类、信息统计书籍信息总数、删除书籍信息等操作。
系统主页面 后 台 判 断 是 登用户陆名和页密码 面 否 图2-2
后台登陆页面 2.3业务逻辑描述
我们的系统“网上书店系统”主要是实现网上选书、购书、产生订单等功能的系统。
用户登录会员注册:系统的用户登录及身份验证要求、系统用户注册、验证用户的注册信息。
购物车管理:当客户选择购买某种图书的时候,应该能够将对应图书信息,例如价格、数量记录到对应的购物车中,并允许添加到购物车中,当对应购物订单生成后,应该自动清除已生成订单的购物车中的信息
订单处理:选择购买某种图书的时候,应该能够将对应图书信息,例如价格、数量记录到对应的购物车中,并允许添加到购物车中,当对应购物订单生成后,以便于网站配送人员依据订单信息进行后续的出货、送货的处理。
10
第3章 相关理论与技术
3.1系统架构
2.1.1功能结构 网上书店系统 商品展示 商品预览 商品明细 分类检索 购物车 添加商品 删除列表 恢复列表 数量修改 清空购物车 结算 用户管理 用户注册 登录/退出 图3-1
网上书店系统主要包括商品展示、用户管理、购物车三个功能模块。
11
功能描述:
商品展示:商品预览、商品明细、分类检索
购物车:添加商品、删除列表、恢复列表、数量修改、清空购物
车、结算
用户管理:用户注册、登录、退出
3.1.2系统架构
网上书店系统采用4层结构,主要包括:表现层、控制层、业务层、持久层。
表现层:主要负责用户交互和结果显示。
控制层:主要负责系统的访问控制、数据加载和注销,是系统的核心控制单元。 控制层通过系统描述来组织工作。
业务层:实现了系统的主要业务逻辑,是系统主要的运算单元。 持久层:视线了静态数据和数据库数据的持久化管理,为业务层
提高数据服务, 是系统进行数据操作的统一界面。
3.2主要实现技术
3.2.1 MVC简介
MVC 是 Model(模型) —— View(视图) — — Controller(控制器)的 缩写,MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分
12
开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。分层概念
视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Macromedia Flash和象XHTML,XML/XSL,WML等一些标识语言和Web services.
模型表示企业数据和业务规则。在MVC的三个部件中,模型拥有最多的处理任务。例如它可能用象EJBs和ColdFusion Components这样的构件对象来处理数据库。被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据。由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。
控制器接受用户的输入并调用模型和视图去完成用户的需求。所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。
MVC的优点:低耦合性,高重用性和可适用性,快速的部署,可维护性,有利于软件工程化管理。 3.2.2表现层主要实现技术
视图层主要实现技术有:JSP+AJAX+JavaScript
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后
13
将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
AJAX是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术。通过 AJAX,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信。通过这个对象,您的 JavaScript 可在不重载页面的情况与 Web 服务器交换数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。AJAX 可使因特网应用程序更小、更快,更友好。
AJAX 是一种独立于 Web 服务器软件的浏览器技术。 AJAX 基于下列 Web 标准:
JavaScript XML HTML CSS 在 AJAX 中使用的 Web 标准已被良好定义,并被所有的主流浏览器支持。AJAX 应用程序独立于浏览器和平台。 Web 应用程序较桌面应用程序有诸多优势;它们能够涉及广大的用户,它们更易安装及维护,也更易开发。
不过,因特网应用程序并不像传统的桌面应用程序那样完善且友好。
通过 AJAX,因特网应用程序可以变得更完善,更友好。 3.2.3控制层主要实现技术
控制主要实现技术有:开源框架Struts2
Struts 2是Struts的下一代产品,Struts2并非继承自Struts1的构架机制,而是继承自WebWork,因为Struts2是对WebWork的升级而产生的,Struts2吸收了Struts1和WebWork两者的优势,从而在稳定性、性能等各方面都有很好的保证。Struts 2以WebWork为核心,采用拦截器的机制来处理用户
14