郑州轻工业学院
本科毕业设计(论文)
题 目 E家水果网上销售平台设计与实现 学生姓名 专业班级 学 号 院 (系) 计算机与通信工程学院 指导教师(职称) 完成时间
郑州轻工业学院
毕业设计(论文)任务书
题目 E家水果网上销售平台设计与实现 专业 网络工程 学号 姓名 主要内容、基本要求、主要参考资料等:
主要内容:系统是用JSP和SQL2000所做的网上销售平台,可实现用户登陆、注册,
网上购买,商品查寻及后台管理等功能。
基本要求:1. 测评系统各基本功能都能实现。 2.设计严谨、功能完备。 3.界面美观大方,使用方便。 主要参考资料:
[1] DanWesley&JudithWesley. Developing Real Word Intranets[M].NewYork: Publishing House of electronics Industry, 1999.9-45.Baldenius T, Reichelstein S, Sahay S A. Negotiated Versus Cost-Based Transfer Pricing[J].Review of Accounting Studies,1999,4: 67-91.
[2] 冯应国.页面设计的注意事项.科技情报开发与经济. 2004.6.10-35. [3] 陈晶.浅谈页面的可用性设计.现代图书情报技术.2003年01期.21-45. [4] 林荣平.网络主页的制作技巧.山东大学资料室.2004.8.12-45. [5] 周颢.网络编程语言JSP实例教程. 电子工业出版社 . 2002 -6
[6] (美)Simon Brown,Sam Dalton,Dan jepp等著.JSP编程指南. 电子工业出版社 2004.08
完 成 期 限: 指导教师签名: 专业负责人签名:
年 月 日
E家水果网上销售平台设计与实现
E家水果网上销售平台设计与实现
摘 要
随着通信技术和现代网络技术的飞速发展,快速及方便的网上交易进入了人们的
生活。而随着现代物流的出现,为实物的买卖提供了很大的方便,使网上商店的发展迅速。网上商店的出现让传统的商店进入了改革时期,它使人们足不出户就能买到自己想买的东西,而且它商品之多,品种之全使传统的商店失色了不少。网上商店的出现,正在影响人们的生活方式。
本论文首先简单的介绍了一些常用的网站开发技术及其特点,并对JSP及其与其相关技术进行的扼要的说明。接着论述了E家水果网上商店的主要功能模块的功能需求,以及总的设计方案。
关键词:网络;水果网上商店
I
E家水果网上销售平台设计与实现
THE ONLINE SALES PLATFORM FOR FRUIT OF E HOME
Abstract
With the communication technology and rapid development of modern network technology, fast and convenient online trading into people's lives. With the emergence of modern logistics, the kind of trading offers great convenience to the rapid development of online shops. The emergence of online stores to traditional shops entered the reform period, it makes people want to buy homes will be able to buy their own things, and it many goods, the variety of traditional shops eclipsed the whole lot. The emergence of online stores, are affecting people's lifestyles.
This dissertation first introduces some simple common web development technology and its features, and JSP and its associated technologies for a brief description. Then discusses the E home of fruit shop online main modules of the functional requirements, as well as the overall design.
KEYWORDS: Network,fruit online store
II
E家水果网上销售平台设计与实现
目 录
摘 要 .................................................................................................................................. I
ABSTRACT ...................................................................................................................... II 1.
前言 ........................................................................................................................... 1
1.1. E家水果网上销售平台概述 ............................................................................................ 1 2. 本平台开发原理以及与其相关的技术.............................................................. 2 2.1. JSP网站开发技术简介 ........................................................................................................ 2 2.2. Sevelet .............................................................................................................................................. 7
2.3. Struts ................................................................................................................................................. 10
3. 平台开发中用到的工具及其介绍 ...................................................................... 13 4.
界面需求分析与系统设计 ................................................................................ 18
4.1. 系统功能分析 ........................................................................................................................... 18
4.1.1. 4.1.2.
基本功能需求 ....................................................................................................................... 18 具体功能需求分析 .............................................................................................................. 18
4.2. 系统设计 ...................................................................................................................................... 19
III
E家水果网上销售平台设计与实现
4.3. 系统的详细设计 ..................................................................................................................... 20
4.3.1. 4.3.2. 4.3.3. 4.3.4. 4.3.5. 4.3.6. 4.3.7. 4.3.8. 4.3.9. 4.3.10. 4.3.11.
设计任务 ................................................................................................................................. 21 前台展示界面的分析与设计 ........................................................................................... 21 会员登陆条设计 ................................................................................................................... 22 新品上市界面 ....................................................................................................................... 23 水果分类模块 ....................................................................................................................... 23 商品搜索模块 ....................................................................................................................... 24 验证码模块 ............................................................................................................................ 26 后台登录界面设计 .............................................................................................................. 28 后台主页面介绍 ................................................................................................................... 29 商品管理模块 ................................................................................................................... 30 特色设计 ............................................................................................................................. 32
结束语 ................................................................................................................................ 33
致 谢 ................................................................................................................................ 34
参考文献 ........................................................................................................................... 35
IV
E家水果网上销售平台设计与实现
1. 前言
1.1. E家水果网上销售平台概述
随着社会的发展科学的进步,商品社会开始向网络平台转移,而网上交易的方便,以及信息量之大,再加上人们现在快节奏生活的需要,使现在网络商店的发展越来越快。由于网络商店并不打扰现在实店的发展,并且可以使人们实现双收入,所以现代的水果商店迫切需要网络化,以实现信息共享,商店互通[1]。
网上商店的也能给商店打了一个免费的网络广告,同时也能租出广告位,给本店带来其它的经济收入。简单地说,网络广告就是在网络上做的广告。利用网站上的广告横幅、文本链接、多媒体的方法,在互联网刊登或发布广告,通过网络传递到互联网用户的一种高科技广告运作方式。与传统的四大传播媒体(报纸、杂志、电视、广播)广告及近来备受垂青的户外广告相比,网络广告具有得天独厚的优势,是实施现代营销媒体战略的重要一部分。Internet是一个全新的广告媒体,速度最快效果很理想,是中小企业扩展壮大的很好途径,对于广泛开展国际业务的公司更是如此。 目前网络广告的市场正在以惊人的速度增长,网络广告发挥的效用越来越显得重要。以致广告界甚至认为互联网络将超越路牌,成为传统四大媒体(电视、广播、报纸、杂志)之后的第五大媒体。因而众多国际级的广告公司都成立了专门的“网络媒体分部”,以开拓网络广告的巨大市场[2]。
因此基于电子商务系统越来越被人们所需求。而网上商店作为商店的明信片,商店的一个无声广告,开发网上水果商店,适应社会信息化进程的需要,切实转变和变革现代商业模式,使之更好地为经济建设和精神文明建设服务,已成为我们现代人的一个使命。
1
E家水果网上销售平台设计与实现
2. 本平台开发原理以及与其相关的技术
2.1. JSP网站开发技术简介
JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易[3]。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。
2.1.1. JSP技术的强势
(1) 一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码
2
E家水果网上销售平台设计与实现
不用做任何更改。
(2) 系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环
境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
(3) 强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台
服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4) 多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多
非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下[4]。
2.1.2. JSP内置对象
(1) request对象:
该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交信息。
(2) response对象:
对客户的请求做出动态的响应,向客户端发送数据。 (3) session对象:
什么是session:session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间反复连接,反复刷新一个页面,服务器应当通过某种办法知道这是同一个客户,这就需要session对象[5]。
session对象的ID:当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个session对象,同时分配一个String类型的ID号,JSP引擎同时将这个ID号发送到客户端,存放在Cookie中,这样session对象和客户之间就建立了一一对应的关系。当客户再访问连接该服务器的其他页面时,不再分配给客户新的session对象,直到客户关闭浏览器后,服务器端该客户的session对象才取消,并且和客户的会话对应关系消失。当客户重新打开浏览器再连接到该服务器时,服务器为该客户再创建一个新的session对象[6]。
3
E家水果网上销售平台设计与实现
③session对象存在一定时间过期问题,所以存在session中的名值对会在一定时间后失去,可以通过更改session有效时间来避免这种情况。同时编程时尽量避免将大量有效信息存储在session中,request是一个不错的替代对象。 (4) application对象: 什么是application:
服务器启动后就产生了这个application对象,当客户在所访问的网站的各个页面之间浏览时,这个application对象都是同一个,直到服务器关闭。但是与session不同的是,所有客户的application对象都是同一个,即所有客户共享这个内置的application对象。 application对象常用方法:
1) public void setAttribute(String key,Object obj): 将参数Object指定的对象obj添加到application对象中,并为添加的对象指定一个索引关键字。 2) public Object getAttribute(String key): 获取application对象中含有关键字的对象。 (5) OUT对象:
out对象是一个输出流,用来向客户端输出数据。out对象用于各种数据的输出。
(6) page java.lang.Object
对应this关键字。JSP网页本身,page对象是当前页面转换后的Servlet类的实例。从转换后的Servlet类的代码中,可以看到这种关系:Object page = this;在JSP页面中,很少使用page对象。 (7) config
javax.servlet. ServletConfig 的实例,该实例代表该JSP 的配置信息。常用的方法有getInitParameter(String paramNarne) 及getInitparameternarnes()等方法。事实上, JSP 页面通常无须配置,也就不存在配置信息。因此,该对象更多地在Servlet 中有效。 (8) exception
java.lang.Throwable 的实例,该实例代表其他页面中的异常和错误。只有当页面是错误处理页面,即编译指令page 的isErrorPage 属性为true 时,该对象才可以使用。常用的方法有getMessage()和printStackTrace()等[7]。 (9) pageContext
4
E家水果网上销售平台设计与实现
javax.servlet.jsp.PageContext 的实例,该对象代表该JSP 页面上下文,使用该对象可以访问页面中的共享数据。常用的方法有getServletContext()和getServletConfig()等。
2.1.3. JSP的技术方法
为了快速方便地进行动态网站的开发,JSP在以下几个方面做了改进,使其成为快速建立跨平台的动态网站的首选方案。 (1) 将内容的生成和显示进行分离
用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成[8]。 在服务器端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于HTML的Web浏览器的完全可用性。 (2) 可重用组件
绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBeans组件)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡 (3) 采用标识
Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。 (4) 适应平台
5
E家水果网上销售平台设计与实现
几乎所有平台都支持Java,JSP+JavaBeans几乎可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。 (5) 数据库连接
Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。Sun公司还开发了JDBC-ODBC bridge,利用此技术Java程序可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java程序能访问诸如Oracle、Sybase、MS SQL Server和MS Access等数据库。
此外,通过开发标识库,JSP技术可以进一步扩展。第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来进行工作。
JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且能扩展到支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java的,而且所有的JSP页面都被编译成为Java Servlets,所以JSP页面具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。
2.1.4. JSP的应用模型
利用JSP技术,动态信息由JSP页面来表现,JSP页面由安装在Web服务器或者使用JSP的应用服务器上的JSP引擎执行。JSP引擎接受客户端对JSP页面的请求,并且生成JSP页面作为对客户端的响应。
JSP页面通常被编译成为Java Servlets,这是一个标准的Java扩展。页面开发人员能够访问全部的Java应用环境,以利用Java技术的扩展性和可移植性。当JSP页面第一次被调用时,如果它还不存在,就会被编译成为一个Java Servlets类,并且存储在服务器的内存中。这就使得在接下来的对该页面的调用中,服务器会有非常快的响应(这避免了CGI-BIN为每个HTTP请求生成一个新的进程的问题)。
6
E家水果网上销售平台设计与实现
JSP页面可以包含在多种不同的应用体系结构或者模型中,可以用于由不同协议、组件和格式所组成的联合体中。基于JSP的动态信息发布技术是一个开放的、可扩展的建立动态Web页面的标准。不论采用什么创建工具,开发人员都可以使用JSP页面来创建可移植的Web应用,在不同的Web应用服务器上运行。
2.2. Sevelet
Servlet是用Java编写的Server端程序,它与协议和平台无关。Servlet运行于Java-enabled Web Server中。Java Servlet可以动态地扩展Server的能力,并采用请求-响应模式提供Web服务。
最早支持Servlet技术的是JavaSoft的Java Web Server。此后,一些其它的基于Java的Web Server开始支持标准的Servlet API。
2.2.1. Servlet的特点
Servlet是Java技术对CGI编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资(更重要的是, Servlet程序员收入要比Perl程序员高:-)
(1) 高效
在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在Servlet中,每个请求由一个轻量级的Java线程处理(而不是重量级的操作系统进程)。在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在内存中重复装载了N次;而对于Servlet,处理请求的是N个线程,只需要一份Servlet类代码。在性能优化方面,Servlet也比CGI有着更多的选择,比如缓冲以前的计算结果,保持数据库连接的活动,等等。
(2) 方便
Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等。
(3) 功能强大
7
E家水果网上销售平台设计与实现
在Servlet中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,Servlet能够直接和Web服务器交互,而普通的CGI程序不能。Servlet还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。
(4) 可移植性好
Servlet用Java编写,Servlet API具有完善的标准。因此,为I-Planet Enterprise Server写的Servlet无需任何实质上的改动即可移植到Apache、Microsoft IIS或者WebStar。几乎所有的主流服务器都直接或通过插件支持Servlet。
(5) 节省投资
不仅有许多廉价甚至免费的Web服务器可供个人或小规模网站使用,而且对于现有的服务器,如果它不支持Servlet的话,要加上这部分功能也往往是免费的(或只需要极少的投资)[9]。
2.2.2. Servlet的主要功能
Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。这个过程为:
客户端发送请求至服务器端; 服务器将请求信息发送至Servlet
Servlet生成响应内容并将其传给Server。响应内容动态生成,通常取决于客户端的请求
服务器将响应返回给客户端
Servlet看起来像是通常的Java程序。Servlet导入特定的属于Java Servlet API的包。因为是对象字节码,可动态地从网络加载,可以说Servlet对Server就如同Applet对Client一样,但是,由于Servlet运行于Server中,它们并不需要一个图形用户界面。从这个角度讲,Servlet也被称为Faceless Object。
2.2.3. JAVA Servlet的优势
Servlet可以和其他资源(文件、数据库、Applet、Java应用程序等)交互,以生成返回给客户端的响应内容。如果需要,还可以保存请求-响应过程中的信息。
采用Servlet,服务器可以完全授权对本地资源的访问(如数据库),并且Servlet自身将会控制外部用户的访问数量及访问性质
8
E家水果网上销售平台设计与实现
Servlet可以是其它服务的客户端程序,例如,它们可以用于分布式的应用系统中,可以从本地硬盘,或者通过网络从远端硬盘激活Servlet。
Servlet可被链接(chain)。一个Servlet可以调用另一个或一系列Servlet,即成为它的客户端。
采用Servlet Tag技术,可以在HTML页面中动态调用Servlet。 Servlet API与协议无关。它并不对传递它的协议有任何假设。 像所有的Java程序一样,Servlet拥有面向对象Java语言的所有优势 Servlet提供了Java应用程序的所有优势——可移植、稳健、易开发。使用Servlet 的Tag技术,Servlet能够生成嵌于静态HTML页面中的动态内容。 一个Servlet被客户端发送的第一个请求激活,然后它将继续运行于后台,等待以后的请求。每个请求将生成一个新的线程,而不是一个完整的进程。多个客户能够在同一个进程中同时得到服务。一般来说,Servlet进程只是在Web Server卸载时被卸载。
2.2.4. Servlet生命周期
装载Servlet。这项操作一般是动态执行的。然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet。 Server创建一个Servlet的实例 Server调用Servlet的init()方法 一个客户端的请求到达Server Server创建一个请求对象 Server创建一个响应对象
Server激活Servlet的service()方法,传递请求和响应对象作为参数 service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法
对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,
9
E家水果网上销售平台设计与实现
但无需再次调用init()方法。一般Servlet只初始化一次 ,当Server不再需要Servlet时(一般当Server关闭时),Server调用Servlet的Destroy()方法。
在美国,EJB+Servlet+JSP几乎成为电子商务的开发标准。本来 ASP 也很有希望,但微软最近可能把精力都集中在打官司和Win2000上, 因此电子商务发展得太少。PHP由于其模式和一些天生缺陷,毫无希望。 在美国,很少有商业站点用PHP的。
2.3. Struts
Struts是Apache 基金会Jakarta 项目组的一个Open Source 项目,它采用MVC模式,能够很好地帮助java 开发者利用J2EE开发Web应用。和其他的java架构一样,Struts 也是面向对象设计,将MVC模式\"分离显示逻辑和业务逻辑\"的能力发挥得淋漓尽致。Structs 框架的核心是一个弹性的控制层,基于如 Java Servlets[12],JavaBeans,ResourceBundles与XML等标准技术,以及 Jakarta Commons 的一些类库。Struts有一组相互协作的类(组件)、Servlet以及jsp tag lib组成。基于struts构架的web应用程序基本上符合JSP Model2的设计标准,可以说是一个传统 MVC设计模式的一种变化类型[10]。
Struts最早是作为Apache Jakarta项目的组成部分问世运作。项目的创立者希望通过对该项目的研究,改进和提高Java Server Pages、Servlet、标签库以及面向对象的技术水准。
Struts的目的是为了减少在运用MVC设计模型来开发Web应用的时间。你仍然需要学习和应用该架构,不过它将可以完成其中一些繁重的工作。
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。
除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活运用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。
关于页面导航,我认为那将是今后的一个发展方向,事实上,这样做,使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得
10
E家水果网上销售平台设计与实现
更加明显。
MVC即Model-View-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。
2.3.1. Struts的流程
服务器启动后,根据web.xml加载ActionServlet读取struts-config.xml文件内容到内存。
以登陆为例:第一次进login.jsp会先实例化Form、把默认值(String默认为空字符串,整形默认为0)赋给表单元素。
输入用户名密码提交表单、提交到action属性的login.do,通过ActionServlet读struts-config.xml文件找到 action下的path属性找到.do,通过name属性找form-beans中的form-bean的name属性得到ActionForm的包名类名,先实例化form,把表单的值填充给form,调用form的validate方法验证、ActionErrors返回null表示验证通过,否则失败返回input指定的页面.验证通过会实例化Action,执行Action的excute方法
[11]
。
2.3.2. Struts框架结构图
相应框架结构如图2-1所示。
图2-1 Struts框架结构图
Struts对Model,View和Controller都提供了对应的组件。
在上图2-1中,ActionServlet,这个类是Struts的核心控制器,负责拦截来自用
户的请求。
11
E家水果网上销售平台设计与实现
Action,这个类通常由用户提供,该控制器负责接收来自ActionServlet的请求,并根据该请求调用模型的业务逻辑方法处理请求,并将处理结果返回给JSP页面显示。 Model部分
由ActionForm和JavaBean组成,其中ActionForm用于封装用户的请求参数,封装成ActionForm对象,该对象被ActionServlet转发给Action,Action根据ActionFrom里面的请求参数处理用户的请求。
JavaBean则封装了底层的业务逻辑,包括数据库访问等。 View部分
该部分采用JSP实现。
Struts提供了丰富的标签库,通过标签库可以减少脚本的使用,自定义的标签库可以实现与Model的有效交互,并增加了现实功能。对应上图的JSP部分。 Controller组件
Controller组件有两个部分组成——系统核心控制器,业务逻辑控制器。 系统核心控制器,对应上图的ActionServlet。该控制器由Struts框架提供,继承HttpServlet类,因此可以配置成标注的Servlet。该控制器负责拦截所有的HTTP请求,然后根据用户请求决定是否要转给业务逻辑控制器。
业务逻辑控制器,负责处理用户请求,本身不具备处理能力,而是调用Model来完成处理。对应Action部分。
2.3.2. Struts框架
struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发。
本章详细讨论struts架构。我们将看到struts是如何清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序过程的。我们还将介绍struts提供的类如何使得开发工作更加简单,这些类包括:
控制程序流程的类
实现和执行程序事务逻辑的类
自定义的标记库使得创建和验证HTML表单更加容易
12
E家水果网上销售平台设计与实现
3. 平台开发中用到的工具及其介绍
在平台的开发中主要用到了Dreamweaver MX 2004、Photoshop cs3 、sql2000以及MyEclipse 8.0 GA和Tomcat 6.0,下面我们对其进行大概的介绍[12]。
3.1. Dreamweaver MX技术
Dreamweaver MX是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具充满动感的网页。
Dreamweaver MX是目前最流行的编辑网页、创建和管理站点的专业开发工具之一。使用它提供的各种工具和功能,用户可以非常方便地开发出跨平台、跨浏览器的网页,并实现对站点的有效管理。它是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发。无论您愿意享受手工编写HTM代码时的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为提供有用的工具,使人们拥有完美的 Web 创作体验。
利用 Dreamweaver 中的可视化编辑功能,可以快速地创建页面而无需编写任何代码,可以查看所有站点元素或资源并将它们从易于使用的面板直接拖到文档中,可以在 Macromedia Fireworks 中创建和编辑图像,然后将它们直接导入 Dreamweaver,或者直接在 Dreamweaver 中添加 Macromedia Flash 对象,从而优化开发工作流程。 利用它可以轻而易举地制作出跨越平台和跨越浏览器的。
3.2. Photoshop CS 技术
Photoshop 不仅可以根据需要制作出相应的图片、背景、文字等,还可以按照要求对一幅图片进行处理。Photoshop软件作为专业的图像编辑标准,可帮助提高工作效率,尝试新的创作方式,以及制作适用于打印、Web 和其他任何用途的最佳品质的图像。通过更便捷的文件数据访问、流线型的 Web 设计、更快的专业品质照片润饰功能及其他功能,可创造出无与伦比的影像世界。
Photoshop 的技术功能强大,特别随着技术的不断进步,它的功能也越来越完善,主要表现在如下几个方面:
13
E家水果网上销售平台设计与实现
(1) 文件浏览器,可直观地浏览和检索图像。
(2) 修复画笔,可以轻松地消除图像中的人工痕迹,如蒙尘、划痕、瑕疵和褶皱, 同时保留 阴影、光照和纹理等效果 。
(3) Web 输出的增强功能,可轻松地对 Web 页元素应用透明或部分透明效果,包括混合到任意 Web 背景中的无缝边缘 。
(4) 单个增强的翻转调板,管理 Web 页翻转、动画和图像映射更加得心应手。 (5) 新的“选定”翻转状态,无需手工编码即可创建更高级的 Web 站点导航栏 。
(6) 可自定义的工作区,可存储调板和工具设置的排列方式,即时访问个性化的 Photoshop桌面。 (7) 新的自动色彩命令,可进行可靠的色彩校正。 (8) 新的绘画引擎,可以模拟传统的绘画技巧。
(9) 图案生成器增效工具,只需选择图像的一个区域即可创建现实或抽象的图案,如
小草、岩石和沙子[13]。
(10) 增强的“液化”(扭曲)工具,可用于查看其他图层、缩放、全景显示以及还原
多个操 作 步骤,甚至可以存储自定网格并将它们应用于其他文件 如何使用图像处理工具:
在本系统的页面设计过程中,用到了文字工具、剪切工具、渐变、选择、套索和画笔等工具。并且有些工具又进行了进一步的细化,如套索工具下面又分为矩形、圆形、单行、单列选框工具,可以满足用户的不同需求,大大地方便了设计者的制作。 在Photoshop中,选择工具有很多种,如矩形,手绘,魔术棒等,工具中功能最强的就属魔术棒了,它可以选定有些人手不能的选定,它都能达到目的,它的原理就是对色彩的相似性选择,如果选取图象中一个素的颜色,则它周围与它颜色相近或相同的都会被选取,色调相异的就会被排除。Photoshop的选定功能还可以对选择的块进行重新编辑,按下SHIFT键不放,就能给原来的选择增加选择内容,按下CTRL键就能剪掉选取得过多的区域。
不同的选择工具具有不同的功能,如通过矩形工具不仅可以选择,还可以用来制作不同的图形。
3.3. SQL server 2000
SQL Server是微软公司开发的数据库产品,SQL Server 2000被广泛使用,很多电子商务网站、企业内部信息化平台等都是基于SQL Server产品上。
14
E家水果网上销售平台设计与实现
微软下一代数据库Microsoft SQL Server 2005 支持英特尔下一代的安腾处理器和AMD的下一代 位处理器Opteron。2004年7月,微软已经发布了 Microsoft SQL Server 2005 的最新测试版。
sql server 2000今天的商业环境要求不同类型的数据库解决方案。性能、可伸缩性及可靠性是基本要求,而进入市场时间也非常关键。除这些核心企业品质外,SQL Server 2000 还为您的数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。从数据管理和分析角度看,将原始数据转化为商业智能和充分利用 Web 带来的机会非常重要。作为一个完备的数据库和数据分析包,SQL Server 2000 为快速开发新一代企业级商业应用程序、为企业赢得核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度奖的记录保持者,SQL Server 2000 是一个具备完全 Web 支持的数据库产品,提供了对可扩展标记语言 (XML) 的核心支持以及在 Internet 上和防火墙外进行查询的能力[14]。 Sql server2000特点: (1) 完全的 Web 支持
SQL Server 2000 提供了以 Web 标准为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许您使用内置的存储过程以 XML 格式轻松存储和检索数据。您还可以使用 XML 更新程序容易地插入、更新和删除数据。 (2) 通过 Web 轻松访问数据。
有了 SQL Server 2000,您可以使用 HTTP 来向数据库发送查询、对数据库中存储的文档执行全文搜索、以及通过 Web 进行自然语言查询。 (3) 强大而灵活的基于 Web 的分析。
SQL Server 2000 分析服务功能被扩展到了 Internet。您可以通过 Web 浏览器来访问和控制数据。
(4) 高度的可伸缩性和可靠性
使用 SQL Server 2000 可以获得非凡的可伸缩性和可靠性。通过向上伸缩和向外扩展的能力,SQL Server 满足了苛刻的电子商务和企业应用程序要求。 (5) 向上伸缩。
SQL Server 2000 利用了对称多处理器 (SMP) 系统。SQL Server Enterprise Edition 最多可以使用 32 个处理器和 GB RAM。 (6) 向外扩展。
15
E家水果网上销售平台设计与实现
向外扩展可以将数据库和数据负载分配给多台服务器。 (7) 可用性。
通过增强的故障转移群集、日志传送和新增的备份策略,SQL Server 2000 达到了最大的可用性。 (8) 最快的进入市场时间
SQL Server 2000 是 Microsoft .NET Enterprise Server 的数据管理与分析中枢。SQL Server 2000 包括加速从概念到最后交付开发过程的工具。 (9) 集成和可扩展的分析服务。
有了 SQL Server 2000,您可以建立带有集成工具的端到端分析解决方案,从数据创造价值。此外,还可以根据分析结果自动驱动商业过程以及从最复杂的计算灵活地检索自定义结果集。
(10) 快速开发、调试和数据转换。
SQL Server 2000 带有交互式调节和调试查询、从任何数据源快速移动和转化数据、以及按 Transact-SQL 方式定义和使用函数等功能。您可以从任意 Visual Studio 工具以可视化方式设计和编写数据库应用程序。 (11)简化的管理和调节。
使用 SQL Server 2000,您可以很容易地在企业资源旁边集中管理数据库。可以在保持联机的同时轻松地在计算机间或实例间移动和复制数据库。
3.4. MyEclipse
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript,SQL, Hibernate。 在结构上,MyEclipse的特征可以被分为7类: 1. JavaEE模型 2. WEB开发工具 3. EJB开发工具
4. 应用程序服务器的连接器
16
E家水果网上销售平台设计与实现
5. JavaEE项目部署服务 6. 数据库服务 7. MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级[15]。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。
3.5. Tomcat
Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性
好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的
改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 的进程单独运行的。
这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。
17
E家水果网上销售平台设计与实现
4. 界面需求分析与系统设计
4.1. 系统功能分析
4.1.1.
基本功能需求
(1) 要求系统应有较好的安全性,商店管理员需要进行一定的身份验证后才能进入后
台管理,而且能基本的阻止有人恶意的攻击。
(2) 商店管理员能够对商品的分类、商品的信息和商城公告进行审核,删除,修改,商
店管理员还要能对部分不守信用的会员进行冻解和解冻操作和对顾客定单的处理。
(3) 会员(顾客)能够分类浏览商品以及能够对自己所需的物品进行站内搜索,并且
可以对商品的具体信息进行查看,以及可以购买自己选定的商品。 (4) 实现会员的注册,会员信息的修改。
4.1.2. 具体功能需求分析
根据实际需要,我们把系统分为展示界面与管理界面。又根据实际的需要现将平台功能定格如下:
后台管理界面,在后台管理页面中主要是对展示界面中的信息进行管理,其中主要分为商品管理,会员管理,订单管理,公告管理四大模块下面将这四大模块进行说明:
(1) 商品管理:在商品管理中又有分支,加入了商品分类管理即大分类管理和小分类
管理,功能分别是对它们进行添加与删除操作.商品管理主要是对商品的添加,商品信息的修改,商品的下架。
(2) 会员管理:会员管理中主要实现对会员基本信息的查看,以及对会员的冻结与解
冻的操作,添加此两类的主要目的是为了对某些违规的会员进行一定的。 (3) 订单管理:订单管理中主要是对订单的查看,以及对订单的统计与管理的操作。 (4) 公告管理:在公告管理中实现对公告的删除与添加的操作。
前台展示页面:前台展示页面主要是对商品信息的分类查看,现将功能分类如下.
18
E家水果网上销售平台设计与实现
(1) 会员登陆:会员登陆主要是为了方便购买,在登陆后与登陆前的功能多了一项购
买。
(2) 会员的注册与会员信息修改:会员注册中用户主要添加的信息有:用户名、真实姓
名、密码、所在城市、证件号码,申请后要经过商店管理员进行审核,如果不符合注册条件将对此账号进行删除或冻结操作.会员信息修改要在会员登陆过后进行操作,能修改的信息是除了用户名之外所有的信息。
(3) 商品展示:商品展示在设计中应分为新品上市、特价商品中、畅销商品,其中新品
上市要在主页按照上市时间显示一部分, 会有一个更多的链接。特价商品也是这样。畅销商品应在页面的右侧显示,不再显示商品图片。
(4) 商品搜索与快速查找:商品搜索是站内搜索,并实现分类搜索,分类信息从数据
库提取。快速查找是通过分类的导行进行的,并实现大分类与小分类的分级。 (5) 商城公告:商城公告在主页面也有显示不过是通过链接,主页面显示的是公告的
标题。通过点击过渡到查看页面。
4.2. 系统设计
根据以上分析该网上水果商店得主要目的是利用网站实现商品的查看、购买、用户注册和修改的流程,使顾客的购买更加方便,提高店员的效率、降低管理的成本。网上商店中需要对顾客的购买进行处理,其中要实现商品的名称、价格、打折信息和购买功能。水果商店中的商品分类和商品搜索模块,其中要实现商品的快速查找、定位查找、同类对比。
另外本网站有后台管理系统,主要功能有商品管理、会员管理、订单管理、公告管理四大模块。其中:商品管理有大分类管理、小分类管理、和商品信息管理,主要实现对商品分类以及对商品信息的增、删、改、查;会员管理主要会员信息的查看和对会员的冻结和解冻;订单管理主要是对订单执行的处理;公告管理包括对新公告的发布,旧公告的删除操作。 后台管理结构如图4-1所示。
19
E家水果网上销售平台设计与实现
图4-1 后台管理主要结构图
在本次设计中,后台管理模块用于管理员提供商品、公告信息,以及对会员和公告的管理。其中商品的大类别:什果、橘果、热带及亚热带果、坚果、核果、仁果、浆果,大分类是可以再添加的,由于小分类过多,在这里不再列举。前台展示页面具体的流程为:
打开该系统网站,普通浏览者能浏览和搜索商品,能进行注册,注册后为会员,只有购买的权限;如想登陆后台则要通过前台页面下方的一个链接,登录时为系统管理员,其有商店后台管理区内的所有权限。 功能模块如图4-2所示。
前台展示页面 过客 商品管理 订单管理 会员管理 公告管理 后台管理 会员 商品快速查看 商品搜索 新品上市 特价商品 商城公告 注册会员
商品购买 购物车 查看订单 会员资料修改 (注:会员的权限包括过客的权限)
图4-2前台功能模块图
4.3. 系统的详细设计
20
E家水果网上销售平台设计与实现
参照对系统需求分析所得出的系统功能结构图,对整个界面进行整体分析设计。该系统的界面主要有两个部分:后台界面和前台展示页面。后台界面就是提供给商店管理员对商品、会员、商城公告和商品订单进行管理的;前台展示界面主要显示了该交易平台的主要内容。
4.3.1. 设计任务
详细设计阶段的关键任务是确定怎样具体的实现所要求的目标系统,也就是要设
计出程序的“蓝图”。除了保证程序的可靠性之外,最重要的目标是使将来编写出的程序可读性好,容易理解,容易测试和容易修改、维护。在整个E家水果网上交易平台中,我负责全部系统的开发工作。
4.3.2. 前台展示界面的分析与设计
前台展示界面主要功能是显示商品分类和新品上市、商城公告、畅销商品、特价商品和会员的登陆及注册、资料修改,以及购物车及订单查看的功能。在页面设计上,网站选用深蓝色作为页面的主色调,整体效果给人以清新、淡雅、平静、贴近自然的感觉。
在页面布局上,做了进行了精心的设计,使网站的各种功能和内容一目了然。页面的主体部分,首先显示了最新的商品上市,打折商品,畅销的排行等,为用户提供了极大的方便,界面效果如图4-3所示。
21
E家水果网上销售平台设计与实现
图4-3前台展示界面
4.3.3. 会员登陆条设计
在整个网页的设计中,会员的登陆是参与商品购买的前提,而登陆前后,查看到的商品多了一项功能——购买,在这里实现方法就不在详细的介绍了。登陆过程:判断“username”与“password”的值是否为空,并检查验证码是否正确,如果通过则调用数据库进行查找会员信息,如果通过则登陆成功。具体效果如图4-4所示。
图4-4登陆条及其功能变化
22
E家水果网上销售平台设计与实现
4.3.4. 新品上市界面
在本销售平台的新品上市的模块中主要是对数据库中的“newGoods”的值是“1”,来进行数据提取的,在显示中主要是对产品名称、产品价格、产品的简要说明进行信息输出,在信息输出的时候,对整个显示进行布局,并附有图片,一切有关的信息都是从数据库提取的,至于图片的实现,是通过数据库里的图片名称进行提取并通过CSS里的配置来确定图床路径。在整个布局中对各个行的大小进行了规定使页面更加的美观。实际调试结果如图4-5所示。
图4-5新品上市页面展示
4.3.5. 水果分类模块
为了方便顾客对水果的快速浏览以及对同类的水果进行对比,在本平台的设计中加入了商品分类的模块。在此模块中加入了JAVASCRIPT小脚本,通过onMouseOver与onMouseOut特效,并且在分类的展开与折叠增加了图片的变化使整个模块看起来更人性化,更容易操作。而分类的类别都是从数据库提取的,免去了更改页面的操作
提取的内容是从tb_superType表中提取大分类“TypeName”的值,从tb_subType
23
E家水果网上销售平台设计与实现
表中提取小分类“TypeName”的值,其中二者之间的关联是通过小分类表中的“superType”值进行关联的。“superType”的值是大分类添加的时候数据库自动产生的一个数字这个数字是不能进行更改的。在设计的过程中对分类进行了层次处理,使这一部分看起来更加美观。实际效果如图4-6所示。
图4-6商品分类模块效果
4.3.6. 商品搜索模块
为了方便顾客对商品的快速定位用对比,为此平台加入了站内搜索模块。在此模块中包括全部分类以及从数据库中提取的大分类菜单,以及加入了选中变色代码,方便顾客的使用。并在搜索执行时进行了关链字的提取。在这一小模块的布局中考虑到实用方面,没有添加臃肿的东西,使之看起来更为简洁。如图4-7所示。
24
E家水果网上销售平台设计与实现
图4-7商品搜索模块
商品搜索模块部分代码:
<%
while(rs_search.next()){ goodsID=rs_search.getInt(\"ID\");
goodsName=rs_search.getString(\"goodsName\"); introduce=rs_search.getString(\"introduce\"); nowprice=rs_search.getFloat(\"nowprice\"); if(introduce.length()>20){
introduce=introduce.substring(0,20)+\"...\"; } %>
执行后就会得到如图4-8。
25
E家水果网上销售平台设计与实现
图4-8搜索结果
搜索结果的显示的实现是通过一个小模块实现的图4-8中的界面是没有在登陆状态下显示的,如图所示这个模块的设计中主是对商品的重要信息进行输出,其中详细信息是可以通过对名称的点击进行查看的。也就是说商品名是一个herf,具体的布局在这里不再详细的介绍。如果会员登陆过后,就可以看到一个购买的功能,具体的实现方法和会员登陆中的实现方法一样,也是通过对登陆条中的两个text值是否为空进行更改显示的。具体效果如图4-9所示。
图4-9会员登陆过后的搜索界面对比
4.3.7. 验证码模块
验证码的英文CAPTCHA 这个词最早是在2002年由卡内基梅隆大学的Luis von Ahn、Manuel Blum、Nicholas J.Hopper以及IBM的John Langford所提
26
E家水果网上销售平台设计与实现
出。CAPTCHA 是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机和人的公共全自动程序。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。
验证码的作用:
防止:恶意破解密码、刷票、论坛灌水
有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上是用验证码是现在很多网站通行的方式(比如招商银行的网上个人银行,百度社区),我们利用比较简易的方式实现了这个功能。虽然登陆麻烦一点,但是对顾客的密码安全来说这个功能还是很有必要,也很重要。但我们还是 提醒大家主要保护自己的密码 , 尽量使用混杂了数字、字母、符号在内的6位以上密码,不要使用诸如1234之类的简单密码或者与用户名相同、类似的密码 ,免得你的账号给人盗用给自己带来不必要的麻烦。
在本平台的设计中我们在会员的登陆、会员的注册、会员资料修改,等模块上加入了验证码,有效的提高了本网站的安全性。效果如图4-3和4-10所示。
图4-10会员注册
验证码刷新代码:
function reloadImage(url)
27
E家水果网上销售平台设计与实现
{
var img = document.getElementById(\"img1\"); img.src = url+\"?\" + Math.random(); }
4.3.8. 后台登录界面设计
该界面主要是以深蓝色为主色调,整体效果给人以清新、淡雅、平静、心旷神怡的感觉。主页的登陆界面是一个登陆条在这里不做详细解释。后台管理登录界面在该系统的站点中处于首页的位置。而且一般情况下,主页应该有一个大一些的标志,在一个显眼的地方,写出公司名称或站点名称。基于这些因素我在设计此登陆界面时仅在上面设置了该系统的名称和登陆系统。
该界面的整体设计风格是通过加入背景图片实现的,首先整个窗口的背景是一个渐变的图片;该界面通过表格的形式进行布局,上面是一个一行一列的表格,加入的是一个背景图片。
再下面是一个二行三列的表格:第一行里插入的是标题名称,该标题是通过photoshop制作的一个gif图像,第二行是通过Dreamweaver 添加的三个文本框一个验证码图片和一个提交按钮二个普通按钮,用来设置用户名和密码,并进行提交或者其它操作。如图4-11所示:
图4-11后台登陆界面
下面的登陆系统则是通过表单对象设置的,表单是Dreamweaver Mx提供的一种
28
E家水果网上销售平台设计与实现
功能对象,通过表单可以在页面上添加单行文本框、多行文本框、按钮、下拉菜单、单选框、复选框等,用来提交信息。如上图的“用户名”和“密码”就是通过添加但行文本框实现的登陆系统。“进入”是一个按钮,用来提交信息,经过系统验证后若提交的信息正确则进入系统,否则出现错误信息提示。如图4-12所示。
图4-12登陆报错
4.3.9. 后台主页面介绍
在后台主页面的设计中依然以深蓝色为基调,在整个后台页面的开发中没有遇到
什么大的问题所以在这里做个概述就不在一一的介绍。后台主页面的设计主要是为了与数据库需要的有关数据进行更新,因此主页面的模块有商品管理、会员管理、订单管理和公告管理,其中商品管理中又有大分类管理、小分类管理,和商品管理以实现对应的增、删、改、查功能。会员管理主要是对些违规的会员进行冻结与解冻的操作,并且能够对会员信息进行查看。订单管理中主要是对订单进行统计。公告管理主要是对公告的添加与公告的删除操作。总体如图4-13所示。
29
E家水果网上销售平台设计与实现
图4-13后台管理
4.3.10. 商品管理模块
后台管理的最重要的模块就是商品管理,其它的都为辅助功能。在商品管理的界面中有商品的分类管理和商品的管理:商品的分类管理又分为大分类管理和小分类管理,分别实现对应的数据增加、查看、删除功能效果如图4-14和4-15所示;商品管理中实现商品数据增加、修改、查看、删除功能,效果如图4-13和4-16所示。在此中商品的分类数据是向数据库添加,对应的功能是前台的展示页面中的公类展示模块。
30
E家水果网上销售平台设计与实现
图4-14大分类管理
大分类和小分类的管理界面原理都是一样,都是从数据库中进行提取信息,通过数据库语句进行增、删的操作。在页面的布局中如图中所示信息示显示和操作选区,值得一提的是在页面中加入了全选/反选的“checkbox”,并通过调用CLASS里的“noborder”类进行实现。
图4-15小分类管理
31
E家水果网上销售平台设计与实现
在商品信息的添加小模块中整个布局如图所示,除了与商品信息数据库中的信息对应的信息进行添加的同时,加入了所属分类的确定,此举是为了方便站内搜索的和快速查找的需要,两者分别对应的值在数据库表现为“typeID”,此ID是对应小分类的,小分类表中有对应大分类的“superType”避免了数据种类的重复。
图4-16商品添加模块
4.3.11. 特色设计
在本网站设计中与开发中有许多特色设计,现在拿首页的navigation来说一下,在此小模块的设计中,背景色为深蓝色,在其右上角可以看到有两个小功能链接:设为首页和收藏本站,原来考虑再增加一个Email的链接,但是基于本网站的安全考虑,将此功能删除。左下有一实时的电子表显示时间,以及右下导航条。这几个小功能的实现都是通过调用JS文件里的特定功能进行实现的。别外本网站的设计中还有一个特色,解决输出是中文乱码的小程序。
图4-17网站导航
32
E家水果网上销售平台设计与实现
结束语
伴随着web的高速发展,web也将逐渐与人们的生活融为一体,但是在速度、
安全性、操作简捷等方面还不能满足用户的需求,这样的情况下,提高Web设计水平,提升Web的易用性是当务之急。这就要求在进行web界面设计时,要综合多种因素,从用户角度出发,以用户为中心, “为用户而设计”,而不能“为设计而设计”。
在本次的设计中,通过对系统的分析,按照web界面技术的准则对该平台的界面进行设计,获得了一定的成果。但是由于以前掌握的知识比较片面,并且只是纸上谈兵,没有运用到过实践中。因此在做的过程中碰到了很多问题,都是由于实践太少而考虑不周造成的。如在整体布局时,每个分块的大小是否合适,图片究竟多大与其它配合下来才是最好的,在图像处理时都是经过多次的修改才能做好,而不能很快地做出来等等。在做的过程中都是通过多次的试验和比较才确定下来的,以至于浪费了不少的时间。
通过这次的实践,使我受益匪浅。并有机会把理论知识用到了实践中,从中获得更多的知识。
33
E家水果网上销售平台设计与实现
致 谢
三个多月的毕业设计马上就要结束了,在这段时间里,能够完成本次毕业设计,除了我自己的努力外,与老师的热心指导,同学们的帮助是分不开的。老师和同学也给予我很大的帮助。其中我们的**老师给予了我很大的帮助,在设计刚开始的时候,吉老师给我们介绍一些书籍供我们参考,并指导我们如何去正确安排毕业设计步骤,为我们讲解系统要实现的基本功能,使我们对系统的设计有了一个初步的认识;然后*老师对我们设计的需求分析耐心指导,指出一些考虑不周的地方,并提出了较好的修改意见,为我们的设计思路指引了方向。
在毕业设计过程中,*老师对我们认真负责,对我们的设计进行全面、具体的指导,同时我们还相互交流思想,*老师又给我们提出了许多宝贵意见;平时吉老师也很关心我们的进度,查看我们设计的进展情况并时时鼓励我们,因此我们都非常感谢吉老师。
总之,在老师尽心尽力的帮助下,还有同组**同学及其他同学的帮助下,我的毕业设计才能够如期的顺利完成,我在此衷心的感谢他们,真诚的向他们说一声谢谢!
34
E家水果网上销售平台设计与实现
参考文献
[7] DanWesley&JudithWesley. Developing Real Word Intranets[M].NewYork: Publishing House of electronics Industry, 1999.9-45.Baldenius T, Reichelstein S, Sahay S A. Negotiated Versus Cost-Based Transfer Pricing[J].Review of Accounting Studies,1999,4: 67-91. [8] 冯应国.页面设计的注意事项.科技情报开发与经济. 2004.6.10-35. [9] 马林新,方芸. Web多窗口的页面设计.现代计算机. 2002.5.5-28.
[10] 冯沃辉,肖金秀.中文Dreamweaver MX 2004网页设计经典[M].冶金工业出版社,2004,1-3 [11] 陈晶.浅谈页面的可用性设计.现代图书情报技术. 2003,21-45. [12] 林荣平.网络主页的制作技巧.山东大学资料室. 2004,12-45. [13] 周颢.网络编程语言JSP实例教程. 电子工业出版社 . 2002 ,6-34
[14] (美)Simon Brown,Sam Dalton,Dan jepp等. JSP编程指南.电子工业出版社 2004,8-13 [15] 都志辉.JSP编程实践:动态网页的引擎 .清华大学出版社 2002,34-60
[16] (美)杜飞(Duffey,K.). JSP站点设计编程指南. 电子工业出版社 2002,13-26 [17] 三扬科技.开发者突击. Struts 2核心技术与Java EE框架整合开发实战.电子工业出版社 2008,18-33
[18] Struts 2实战/(美) Donald Brown, Chad Michael Davis, Scott Stanlick.北京-人民邮电出版社 2010,19-45
[19] Struts2深入详解/孙鑫.北京-电子工业出版社 2008,34-56
[20] JSP 动态网站开发基础练习+典型案例/唐有明.北京-清华大学出版社 2006,56-76 [21] JSP网络开发实用工程案例/曹衍龙, 徐慧编. 北京-人民邮电出版社 2008,13-24
35
因篇幅问题不能全部显示,请点此查看更多更全内容