基于JSP的网上商城系统设计与实现.docx
摘 要本文阐述了网上购物系统的开发与设计。设计采用现在比较流行的JSP网站开发 技术,并考虑到网站所处理的数据的结构特点及所学到的知识,应用Microsoft SQL Server2005数据库系统作为网站的数据库。系统实现了网站的基本功能,包括客户 的注册登录、浏览网站信息、信息查询、购物并填写订单以及管理员对于网站的维护 与更新。在页面设计与制作中,对于页面的基本格式,使用出自HTML语言的框架, 然后用Dreamweaver CS3及Eclipse在框架里面做详细的设计。结合这次设计的意义对Internet在商业中的应用与发展做一下介绍;然后针对 整个系统进行分析,其中包括可行性分析、需求分析、系统的业务流程分析、数据分 析等;在此基础上确定网站的功能目标,将网站的功能逐次划分,并细分出子功能模 块;接下来设计并实现各个模块,在每个模块都能完成其功能的结果下将其综合成一 个完整的系统。关键词:网上购物;JSP;HTML;TomcatABSTRACTThis paper detaily describes how to develop an electronic commerce website. In the design, I used the JSP technology which is very popular during the website developer. Considered with the knowledge that I have learned and the structure of the date which the website deal with, I used Microsoft SQL server 2005 as the back database of the website. This website system has basic functions of a enterprise websiteIt can show us the information of the goods、news、customers that registered on the website and so on. It also can provides the function that some customers on the web can fill in bills when they want to buy the goods. The system realized the query function for products and the manage functions for the background of the system. During the process of designing the webpage, I make the main frame by HTML, and use Dreamweaver CS3 and Eclipse to finish the detailed design.First, I make a instruction for the application and development of Internet in commerce, then analyze the whole system which includes feasibility analyze, requirement analyze, operation flow analyze and date analyze. Then I make the function aim of this website base on the analyses above and divide the function up to several parts. I design every single part of the function particularly and finally integrate these sub-function modules to one complete system.Key Words:Online Mart; JSP;HTML; Tomcat目 录1 概述 11.1 网上商城的现状 11.2 系统实现的目的 21.3 系统实现的意义 21.4 可行性分析 21.5 系统开发运行环境 32 网上商城系统开发相关技术 42.1 JSP介绍 42.2 Tomcat服务器 52.3 Microsoft SQL Server2005 72.4 连接数据库与JavaScript 72.5 系统模式选择 82.5.1 B/S模式概述 82.5.2 B/S的工作原理 82.5.3 B/S模式优点 93 系统总体设计分析 103.1 需求分析 103.1.1 业务需求分析 103.1.2 用户需求分析 103.1.3 功能需求分析 103.2 系统功能模块结构图 113.3 系统功能模块设计 113.4 数据库设计 123.4.1 E-R图 123.4.2 基本表设计 163.5 系统流程 194 网上商城系统详细设计及实现 214.1 程序设计 214.2 系统页面的设计与实现 214.3 系统模块功能实现 214.3.1 管理员登录 224.3.2 订单管理模块 224.3.3 货物管理模块 244.3.4 公告信息管理模块 255 系统测试 275.1 系统测试原理和测试原则 275.1.1 系统测试原理 275.1.2 系统测试原则 275.2 模块测试 27结 论 30参考文献 31致 谢 32IXX大学2012届本科生毕业设计(论文)1 概述因特网的出现将信息技术的进步推向了一个新的高潮,引来了电子商务时代的到 来。电子商务具有虚拟性,以开放的因特网环境为基础,在计算机系统的支持下进行 的商务活动。它基于浏览器/服务器应用方式,是实现网上购物,网上交易和在线支 付的一种新型商业运行模式。网上购物是一种具有交互功能的商业信息系统,它向用 户提供静态和动态两类信息资源。所谓静态信息是指那些经常变动或更新的资源,如 公司简介、管理规范和公司制度等;动态信息是指随时变化的信息,如商品报价,会 议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便地传 递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的 无纸化交换。1.1 网上商城的现状目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用 的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多 采用JSP。采用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于PHP本身存在 的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方 法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可 以根据流量分开,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过的一点, PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP和JSP则没有以上缺陷,ASP可以通过Microsoft Windowsd的COM/DCOM获 得ActiveX规模支持,通过DCOM和Transcation Server获得结构支持;JSP可以通 过SUN Java的Java Class和EJB获得规模支持,通过EJB/CORBA以及众多厂商的 Application Server获得结构支持。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商 都采用 JSP/Servlet。比较出名的如 IBM 的 Ebusiness,它的核心是采用 JSP/Servlet的WebSphere。总的来说,ASP,PHP,JSP 三者都有相当数量的支持者,而这三者也各有所长, 在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的 JSP技术,一方面JSP的安全性和跨平台性比较好,另一方面,我也希望能从开发该 系统的过程中,深入学习一下这门编程语言。1.2 系统实现的目的现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个 细小的环节,这样才能使得在电子交易时避免不必要错误发生。我们将使用 HTML、 JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。传统的管理 信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这 种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性时, 录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立网站 和自己的数据库,使得所需商品信息可以及时的保存、更新,更好的及时了解商品买 卖的情况。1.3 系统实现的意义Internet 的发展为改变传统的商业运作模式提供了一种技术上的可行性的方 案:利用 Internet的技术和协议,建立各种企业内部网 Intranet,企业外部网 Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起, 消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。而在实 际的生活中,这种方案已经被广泛的运用到实际的商业活动中人,们将这种交易模式 称为:电子商务。当今比较流行的网上购物系统国外有“淘宝()”,国内有“当当 () ”。它们都是相当优秀的电子商务网站,对其他的网站提供了良 好的标准。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整 的电子商务网站应有的功能和注意事项。设计和完成一个网络商城网站将会牵涉到许多技术上的问题,如:动态网页制作 技术的,数据库的设计和管理,通过实际制作一个网站,可以避免纸上谈兵,在实践 中掌握上述技术的使用。1.4 可行性分析随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富, 电子商务已经成为网上的一股潮流。我们相信要不了太长时间,顾客就可以在网络世 界上获得他们在现实世界上可以获得的所有商品和服务。本次毕业设计题目:基于JSP的网上商城系统设计与实现 主要目的是利用SQL 数据库和JSP脚本编制一个网上商城系统网站,用以实现账户管理,购物车管理,留 言板管理,订单管理,货物管理,公告信息管理等功能。可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析 是非常必要的,也是很重要的,经过最初的设计目标和进行的市场调查得出以下四点 的可行性分析:(1)经济可行性:该平台设计只是作为本人的毕业设计,又因为本人的设计能 力有限,其功能还不能完善,所以没有什么经济效益可谈。(2)技术可行性:JSPServlet的技术已经较为成熟。(3)运行可行性:该系统需要搭建JVM即JAVA虚拟机和Tomcat环境,在此环 境下系统,并且在正确连接数据库后可以正常运行。(4)法律可行性:该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成侵权,在法律上是可行的。通过以上的可行性分析,我将采用JSPServlet相结合的技术,运用SQL2005 数据库对网站进行建设。1.5 系统开发运行环境操作系统:Windows 2003数据库:SQL Server 20005开发工具包:JDK Version 1.6.0;JSP服务器:Tomcat 6.0;浏览器:IE网页界面设计工具:Dreamweaver CS3集成开发环境(IDE):Eclipse8.53XX大学2012届本科生毕业设计(论文)2 网上商城系统开发相关技术2.1 JSP介绍JSP是Java Server Page的缩写,由Sun公司于1999年6月推出的一种基于Java Servlet的Web开发技术。它以Java语言为基础,与HTML语言紧密结合,可以很好 地实现Web页面设计和业务逻辑分离,可以让Web程序员专注于业务逻辑的实现。JSP 程序不仅编写灵活、执行容易、而且大大提高了系统的执行性能。JSP的设计目标主 要是提供一种更为简便、有效的动态页面编写手段,并且在增强网页程序的独立性、 兼容性和可重用性方面也具有许多优点。1Write Once,Run AnywhereJSP技术继承了Java的先进概念Write Once,Run Anywhere,这种概念正影响 着互联网行业的交互式Web页面的设计理念。JSP页面可以非常容易地跨平台、跨Web 服务器软件来设计和开发源代码。2支持多种动态网页格式对于使用JSP技术设计出来的网页应该采取什么样的格式,目前还没有一个明确 的标准。一般来说,JSP技术目前即可支持HTML/DHTML的传统浏览器文件格式,又 可以支持应用于无线通信进行网页浏览的 WML 文件格式,还可以支持其他一些 B2B 应用的XML格式。3JSP标签可扩充性JSP是使用标签和脚本技术制作动态Web网页的。JSP技术能够使开发者扩展JSP 标签、定制标签库,所以制作网页时充分利用与XML兼容的标签技术可以大大减少对 脚本语言的依赖。定制标签技术使用户降低了制作网页和向多个网页扩充关键功能的 复杂程度。4JSP跨平台的可重用性JSP开发人员在开发过程中一直关注可重用性。JSP组件都是跨平台可重用性。 EJB组件可以访问传统的数据库,并能以分布式系统模式工作于UNIX和Windows平 台。JSP标签的可扩充功能为开发人员提供简便、与XML兼容的接口,使其完全地实 现工业标准化。JSP这种基于组件的模式能有效提高应用程序的开发效率,能够使开发人员快速 创建模版应用程序,然后再整合一些附加功能后便可使用。5易维护性基于JSP技术的应用程序比基于ASP技术的应用程序易于维护和管理。脚本语言都能很好地服务于小的程序,但不能适应大型的、复杂的应用程序。因为Java是结 构化的,因此比较容易创建和维护庞大的、组件化的应用程序。JSP突出的组件技术 使得修改内容和修改逻辑互不影响,而且也非常容易实现。EJB是为企业级应用而设 计的Java组件,它整合了企业逻辑,例如数据库的访问、安全、事务完整性及独立 性。因为JSP技术是一种开放的、跨平台的结构,因此,Web服务器、平台及其他组 件能很容易地升级或切换,并且不会影响 JSP 基本的应用程序。这一特点使得 JSP 能够适用现实世界的各种Web应用程序不断地变化和发展。6企业产品的多样性Java2平台即企业版J2ava适用于多企业应用程序的Java的结构。JSP作为J2EE 的部分,JSP网页可访问所有J2EE的组件,包括JAVA Bean,EJB及Java Servlets。 由于JSP网页都能被编译成Servlet,因此,JSP网页能够较完整地继承有关Servlet 的许多优点,为客户提供基于服务器端的Java应用服务,J2EE平台内容不仅包含管 理复杂的企业应用程序,而且还包括事务管理技术和Pooling资源管理技术。JSP网页可以访问标准的J2EE服务,包括:a) Java名称和目录页面API。b) JDBC API(与关联数据库通信)。c) Java Mail(支持基于Java邮件和消息应用程序的类)。2.2 Tomcat服务器Tomcat是Apache公司组织开发飞一种JSP引擎,由于自身具有Web服务器,所 以可以作为独立的Web服务器使用。如今,基于 Web的应用越来越多,传统的Html 已经满足不了如今的需求。我们需要一个交互式的Web,于是便诞生了各种Web语言 (如 Asp,JSP,Php等)。当然,这些语言与传统的语言有着密切的联系,如Php基 于C和C+语言,JSP基于Java语言。Tomcat是一个 JSP和Servlet的运行平台。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目 中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了 Sun的参与和支持,最新的Servlet和JSP规范总能在 Tomcat中得到体现。Tomcat 提供了各种平台的版本供下载,可以从http:/jakarta.apache.org下载其源代码版 或者二进制版。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(WebArchive)文 件。WAR是Sun提出的一种Web应用程序格式,这个包中的文件按一定目录结构来组 织:通常其根目录下包含有Html和JSP文件或者包含这两种文件的目录,另外还会 有一个WEB-INF目录,这个目录很重要。通常在WEB-INF目录下有一个web.xml文件和一个classes目录。web.xml是这个应用的配置文件,而classes目录下则包含编 译好的Servlet类和JSP或Servlet所依赖的其它类(如JavaBean)。通常这些所依 赖的类也可以打包成 JAR 放到 WEB-INF 下的 lib目录下,当然也可以放到系统的 CLASSPATH中,但那样移植和管理起来不方便。在 Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp 目录下,Tomcat 会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用 的JSP时,通常第一次会很慢,因为Tomcat要将JSP转化为Servlet文件,然后编 译,编译以后,访问将会很快。另外 Tomcat 也提供了一个应用:manager,访问这 个应用需要用户名和密码,用户名和密码存储在一个xml文件中,通过这个应用,辅 助于Ftp,你可以在远程通过Web部署和撤销应用,当然本地也可以。Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理 Html页面。但是与Apache相比,它处理静态Html的能力就不如Apache。我们可以 将Tomcat和Apache集成到一块,让 Apache处理静态Html,而Tomcat处理JSP和 Servlet,这种集成只需要修改一下Apache和Tomcat的配置文件即可。另外,Tomcat提供Realm支持。Realm类似于Unix里面的group.在Unix中一 个group对应着系统的一定资源,某个group不能访问不属于它的资源。Tomcat用 Realm来对不同的应用(类似系统资源)赋给不同的用户(类似group),没有权限的 用户则不能访问这个应用。 Tomcat提供三种Realm,1:JDBCRealm,这个Realm将 用户信息存在数据库里,通过JDBC获得用户信息来进行验证。 2:JNDIRealm,用户 信息存在基于 LDAP的服务器里,通过JNDI获取用户信息。3:MemoryRealm,用户信 息存在一个xml文件里面,上面讲的manager应用验证用户时即使用此种Realm。通 过Realm 我们可以方便地对访问某个应用的客户进行验证。Tomcat 提供其它的一些特征,如与SSL集成到一块,实现安全传输。还有Tomcat 也提供JNDI支持,这与那些J2EE应用服务器提供的是一致的。 说到这里我们要介绍 一下通常所说的应用服务器(如WebLogic)与Tomcat有何区别。应用服务器提供更 多的J2EE特征,如EJB,JMS,JAAS等,同时也支持JSP和 Servlet.而Tomcat则功 能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器) 集成到一块,则可以实现 J2EE 的全部功能。既然应用服务器具有 Tomcat的功能, 那么Tomcat有没有存在的必要呢?事实上,我们的很多中小应用不需要采用 EJB等 技术,JSP和 Servlet已经足够,这时如果用应用服务器就有些浪费了。而 Tomcat 短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择 Tomcat。基 于Tomcat的开发其实主要是JSP和Servlet的开发,开发JSP和Servlet非常简单, 你可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可。2.3 Microsoft SQL Server2005这次网站的设计选用 Microsoft SQL Server 2005 为后台数据库。数据库为 db_business。SQL Server 2005是一项全面完整的数据库与分析产品。从借助浏览器实现的数 据库查询功能到内容丰富的扩展标记语言(XML)支持特性均可有力地证明,SQL Server 2005为全面支持Web功能的数据库解决方案。与此同时,SQL Server 2005 还在可伸缩性与可靠性方面保持着多项基准测试纪录,而这两方面特性又都是企业数 据库系统在激烈市场竞争中克敌致胜的关键所在。SQL SERVER 2005还推出了一组复 杂的新安全特性:强大而灵活的基于角色的服务器、数据库和应用程序配置安全性; 集成的安全性审核工具可以跟踪18个不同的安全事件及其子事件;精密的文件和网 络加密支持,包括SSL(安全套接字层)。对比 SQL Server 2005 和其他的大型数据库管理系统,SQL Server 2005 具有 可靠的安全性,更快的存储速度,高度的兼容性,因此,应用SQL Server 2005作为 后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行提供了坚实的基 础。2.4 连接数据库与JavaScriptJDBC(Java DataBase Connectivity)是sun公司制定的Java链接数据库技术。 在安装好数据库后JSP并不能直接与数据库连接,这里选择利用第三方JDBC驱动程 序连接数据库。在项目开发中,如果频繁在JSP页面中使用数据库连接函数,释放函 数进行操作的话,势必会非常麻烦,而且代码的冗余量也很大,页面很多的时候维护 也会非常麻烦,页面上到处都是数据库连接和释放代码。因此,可以利用公共数据库 访问连接 JavaBean的开发。通过将数据库连接函数代码,释放函数代码等封装在 JavaBean中,可以减少非常多的代码编程工作,提高代码可维护性。在加载了JDBC驱动程序,建立了数据库的URL后,创建一个Condb.java的文件, 通过调用DriverManager类的getConnection方法与db_Business数据库连接。在 getConnection方法的实现中,声明数据库名称为db_Business。这样,在其他的Java 文件和页面中声明调用或包含了Condb.java文件后,都可以对数据库操作了。Sun公司提供的JDBCODBC桥可以访问任何支持ODBC 的数据库,用户只需设置 好ODBC数据源,再由JDBCODBC驱动程序转换成JDBC接口供应程序使用即可。要 想通过ODBC接口实现操作数据库,必须首先创建ODBC数据源,ODBC数据源包含了 如何与一个数据提供者进行连接的信息。数据源共有用户数据源、系统数据源和文件 数据源3种类型。JavaScript 也叫小脚本语言,是一种基于对象和事件驱动并具有安全性能的脚 本语言,使用它的目的是与HTML超文本标识语言、Java 脚本语言一起实现在一个网 页中链接多个对象,与网络客户交互,从而可以开发客户端的应用程序。它是通过嵌 入或调入标准的HTML语言实现的。2.5 系统模式选择2.5.1 B/S模式概述B/S模式(浏览器服务器模式)的数据库体系是利用Web服务器和动态服务网 页(Active Server Pages)作为数据库操作的中间层,将客户机服务器模式的数据 库结构与Web技术密切结合,从而形成具有三层Web结构的浏览器服务器模式的数 据库体系,具体结构见图2-1所示:图2-1三层WEB结构的数据库体系2.5.2 B/S的工作原理基于因特网的MIS是以Web为中心,采用TCP/IP、HTTP为传输协议。当客户端 运行浏览器软件,浏览器则以超文本形式向Web服务器提出访问数据库的要求,Web 服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据 库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给 Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转 发给客户端浏览器以友好的Web页面形式显示出来。如图2-2所示:图2-2三层B/S模式工作原理7XX大学2012届本科生毕业设计(论文)3 .5.3 B/S模式优点(1)用户的操作。由于在前端采用了统一的浏览器界面,所以用户在使用时简单 易用,只需要掌握一些简单的Web页面操作方法,大大降低了培训成本。(2)系统的开发整个软件的开发可集中在服务器端进行,不必对用户端进行特殊 设置和软件安装,降低维护成本。(3)系统环境的配置。前端可以使用任何浏览器(IE、Netscape等);服务器端可 存取任何数据库(SQL Server、Access、FoxPro等);在ASP中可使用任何一种脚本 语言(VB Script、Java Script、PERL等)。(4)系统开发、维护和升级的经济性。B/S 模式所具有的框架结构可以大大节省 软件开发、维护与升级的费用,同时,B/S模式对前台客户机的要求并不高,可以避 免盲目进行硬件升级造成的巨大浪费。(5)B/S模式提供了一致的用户界面。 B/S模式的应用软件都是基于Web浏览器 的,这些浏览器的界面都很相似。对于无用户交互功能的页面,用户接触的界面都是 一致的,从而可以降低软件的培训费用。(6)B/S模式具有很强的开放性。在B/S模式下,外部的用户可以通过通用的浏 览器进行访问。(7)B/S模式的结构易于扩展。由于Web 的平台无关性,B/S模式结构可以任意 扩展,可以从一台服务器、几个用户的工作组级扩展成为拥有成千上万用户的大型系 统。(8)B/S模式具有更强的信息系统集成性。在B/S模式下,集成解决了企事业单 位各种问题的服务,而非零散的单一功能的多系统模式,因而它能提供更高的工作效 率。(9)B/S模式提供灵活的信息交流和信息发布服务。B/S模式借助因特网强大的信 息发布与信息传送能力可以有效地解决企业、高等院校内部的大量不规则的信息交 流。9XX大学2012届本科生毕业设计(论文)3 系统总体设计分析3.1需求分析商务系统随着中国经济的高速发展发生了巨大的变化。专做营销的中小型企业随 着百姓个人消费水平的增长迅速成长起来,但同时也带来了这一行业激烈的竞争。3.1.1 业务需求分析网站的制作已经不单单是把企业想要表达的内容摆放在网站上那么简单,当今的 网站设计包含了更多的设计元素,给予浏览者更多的视觉享受。现在企业营销商需要 用一些更新颖更有效的方式增强竞争力。建设一个宣传自身商品形象的电子商务营销 模式的网站是一种有效的方法。另外,通过电子商务网站,广阔自己的营销方式和市 场,能够帮助企业营销商从鱼龙混杂的市场中脱颖而出,完善企业销售与服务的环节, 最终提升企业的价值与经济效益。3.1.2 用户需求分析这个网站以上面的业务需求为基础,进一步提出网站需要完成的以下任务:网站 需要让供应商、客户以及浏览者能看到商城的信息及动态,另一个重要的内容就是能 够显示出该商城现有的各类型商品及其详细信息。由于消费者的需求在增长和变化, 商城在面对面销售的基础上也要随之发展出相应的服务,如在线订购等技术。3.1.3 功能需求分析根据上面的需求分析,需要设计出网站的用户界面功能与管理员界面功能。在用 户界面所浏览的内容,网站的管理员界面需能相应的做出更新或修改。根据以上的想 法,设计出网站的功能:1 .用户注册、登录;2 .购物车;3 .订单查询;4 .个人资料修改;5 .商品搜索;6 .发布留言;7 .添加商品;8 .处理订单;9.查询用户信息;10.添加连接;11.管理公告信息;将以上这些功能制作成网页以后,在其中分别互相建立连接,基本完成商城及用户对 网站的要求。3.2 系统功能模块结构图根据网上商城系统的实际需求,本系统的功能模块结构图如图3-1所示:图3-1 系统功能结构图3.3 系统功能模块设计我主要负责的是订单管理模块、货物管理模块及公告信息管理模块,下面详细说 明一下这些功能的设计:货物管理模块:管理员可以添加新商品,在管理员界面输入添加商品的基本信息后 便可在用户购买商品的信息栏中找到管理员所添加的商品。其次用 户可以根据输入的商品名称和商品的类型查找到所需要查找的商品 的信息。订单管理模块:对于没有登录或注册的网络商城的用户都不能够进行订单查询,若与 之情况相反的用户是是可以进行订单查询的,通过输入订单号便可查 询到对应于次订单号的商品的购买情况。同时管理员也可以通过登录管理员界面对登录的用户购买的商品信息进行查询。公告信息管理模块:网站向用户发布最新的信息,使用户能了解到网站的最新动态, 同时管理员可以随时更新网站的连接,网与此同时站还可以自动 更新销售排行榜商品销售的排行情况,按照销售量的多少以递减 顺序排列。3.4 数据库设计数据库是数据库应用程序的重要组成部分。一个设计结构合理的数据库对于应用 程序的开发效率和程序的性能都是非常重要的。数据库的设计过程大致如下:(1)需求分析:进行数据库设计首先必须准确了解与分析用户需求(包括数据与处 理)。需求分析是整个设计过程的基础,是最困难最耗费时间的一部分。作为“基地” 的需求分析是否做得充分与准确,决定了在其上构建数据库大厦的速度与质量。需求 分析做得好不好,甚至会导致整个数据库设计返工重做。(2)概念结构设计:概念结构设计是整个数据库设计的关键,它通过对用户需求进 行综合、归纳与抽象,形成一个独立于具体数据库管理系统(DBMS)的概念模型。概 念模型是按用户的观点来对数据建模,使用与进行信息世界建模的工具。它对整个数 据库的设计具有深刻的影响。(3)逻辑结构设计:逻辑结构是把概念结构转化为与所采用的数据库管理系统所支 持的数据模型相符合的过程。(4)物理结构设计:物理结构设计是为逻辑数据库模型选取一个最适合应用环境的 物理结构(包括存储结构和存取方法)。(5)数据库实施:在数据库实施阶段,设计人员运用DBMS提供的数据库语言及其宿 主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数 据入库,并进行试运行。(6)数据库的实施和维护:数据库应用系统经过运行后即可投入正式运行。在数据 库系统运行过程中必须不断地对其进行评价、调整与修改。3.4.1 E-R图E-R图是一种概念模型。概念模型实际上是现实世界到机器世界的一个中间层次。 概念模型用于信息世界的建模,是显示世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言, 因此概念模型一方面具有较强的语义表达能力,能够方便、直接地表达应用中的各种 语义知识,另一方面它还应该简单、清晰、易于用户理解。本人的毕业设计在设计初 期根据网络商城系统的需求分析情况设定了E-R图(即概念模型),以下是各个数据表 的实体图:(1) 商品信息表tb_Ware的实体图(商品信息有8个属性:货物名称、货物价格、货 物介绍、货物编号、货物类型、图片路径、是否推荐、发布时间,其中货物编 号是主属性。)图 3-2 商品信息表tb_Ware的实体图(2)用户信息表tb_User的实体图(用户信息有10个属性:用户名、用户ID,用户密 码、用户地址、密码问题、答案、注册时间、联系电话、电子邮箱、真实姓名,其中 用户ID是主属性。)图 3-3 用户信息表tb_User的实体图(3)留言信息表tb_Text的实体图(留言信息有6个属性:作者姓名、发布时间、留言内容、主题名称、电子邮箱、主题ID,其中主题ID是主属性。)图 3-4 留言信息表tb_Text的实体图(4)订单商品表tb_Shop的实体图(订单商品信息有5个属性:订单号、货物名称、货 物价格、货物数量、统计,其中没有涉及主属性。)订单商品信息图 3-5 订单商品表tb_Shop的实体图(5)订单生成表tb_Sub的实体图(订单生成信息有12个属性:用户名、订单号、电 子邮箱、地址、付款方式、联系方式、其他、订单核对方式、运送方式、邮编、订购 日期、真实姓名,其中订单编号是主属性。)图 3-6 订单生成表tb_Sub的实体图(6)超级链接表tb_Link的实体图(超级链接信息有3个属性:链接名、链接网址、 发布时间,其中不涉及主属性。)图 3-7 超级链接表tb_Link的实体图(7)管理员信息表tb_Admin的实体图(管理员信息有3个主属性:管理员ID、管理员 名、管理员密码,其中不涉及主属性。)图 3-8 管理员信息表tb_Admin的实体图(8)公告信息表tb_Affiche的实体图(公告信息有2个属性:公告内容、公告时间, 其中不涉及主属性。)图 3-9 公告信息表tb_Affiche的实体图(9)总体E_R图(ER图提供了表示实体型、属性和联系的方法。实体型:用矩形框 内写明实体名;属性:用椭圆形表示,并用无向边将其与相应的实体型连接起来;联 系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体型连接起来,同 时在无向边旁标上联系的类型。)图 3-10 总体E-R图3.4.2 基本表设计表的设计是这次设计的一个核心内容。网站中所用到的数据信息基本包括:商品 信息、用户信息、留言信息、订单信息、超级链接信息、管理员信息、公告信息等。 下面是为数据库设计的表:(1)商品信息表tb_Ware商品信息表tb_Ware用来保存商品的基础信息,凡是网站上购买信息栏中面向用户显 示的商品基本信息都在表tb_Ware中存有记录。商品信息表tb_Ware的结构如表3-1所 示:表3-1 tb_Ware的结构字段名称数据类型长度是否允许空是否为主键字段描述WareidInt4否是货物编号WarenameVarchar50否否货物名称WarepriceBigint8否否货物价格WaretypeVarchar20否否货物类型WareintroText16否否货物介绍Wareima