兼职吧 > 毕业论文 > 计算机论文 > 正文

计算机应用专业毕业论文:在线CD销售系统的开发及其应用

来源:应届毕业生求职网发布时间:2011-06-15 浏览:2936次

  论文关键词:JSP SQL Server CD销售

  论文摘要 :随着网络技术与信息技术的发展,因特网与企业经营活动的结合创造了新的网络,使企业的经营活动由传统经营模式转向产品发布、网络、交易等的化,迎来了崭新的时代。

  本文是一种基于JSP+SQL Server技术研究的CD销售网站,通过介绍JSP网站的三层结构模式,充分体现了JSP技术的优势,并通过对开发过程的详细介绍,给出了使用JSP技术构建中小企业的电子商务网站的具体实现方法。本文研究的在线CD销售系统实现了用户端在线浏览CD信息、开通网上购物车、在线提交订单等功能。管理员通过本系统可以添加CD及CD分类、管理用户、管理订单、销售量等。与传统销售行为相比,在线CD销售系统为用户和商家都提供了最高的效率和最便捷的手段。
  Abstract :The internet is developing quickly along with communication technologic, it create a new web economy with the enterprise management. The mode of management changes from tradition into electrification of product issuance, web side distribution and business management which cause by internet. Internet develop a brand new age of E-commercial.In this paper, the CD sales a JSP+SQL Server-based web site, by introducing a three-tier structure of the website JSP model fully embodies the advantages of JSP technology, and through the development process in detail. Construction of a given SME e-commerce websites use JSP specific method. This paper studies the online CD sales system by end users browse the CD online information, and launched online shopping cart. Submitting orders online and other functions. Managing CD and CD can be added to the classification system, user management, order management, sales and other statistics. Compared with traditional sales behavior, online CD sales system provides users and businesses to have the highest efficiency and most convenient means. 

  Key Words:JSP  SQL Server  CD sales


  第1章 绪论 

  1.1 电子商务的概念和基本类型 

  在线CD销售系统是一个典型的电子商务网站。而看似神秘的电子商务并不是一个新的概念,也不是近年才兴起的新型经济活动。确切的说,早在70年代,企业就已经开始了不同类型的电子交易活动,如间的资金转账等。在一定意义上说,数据交换(EDI)是电子商务的雏形和前身,随着互联网技术的发展,使电子商务的有了极大的改善并使电子商务的概念不断扩大。美国电子商务工作委员会对电子商务作了一个简单明了的定义:以电子形式买卖商品和服务的系统叫电子商务。在中国我们普遍认为电子商务是在技术、经济高度发达的现代里,掌握信息技术和商务规则的人,系统化地运用电子工具,高效率、低、安全、可靠、方便地从事以商品交换为中心的种种经济事务活动的总称。而在线CD销售系统也正是利用了电子信息技术,以互联网为媒介进行商务活动[1]。

  从不同的角度电子商务可以分为各种类型,运用比较多,也较广为人知的是按照参与主体来进行划分,这样可以分为企业对企业电子商务交易模式(简称B to B)、企业对消费者电子商务交易模式(简称B to C)、消费者对消费者电子商务交易模式(简称C to C)等,在线CD销售系统属于B to C模式。


  1.2 国内外电子商务的发展现状 
  Internet是一个在全球范围内将成千上万个网络连接起来形成的互联网,无论在国内还是国外,使得人与人之间的距离拉得更近。通过Internet,足不出门你就可以享受逛街的乐趣,顾客在Internet上浏览商品,直接在网上完成购物,由商家将商品邮寄或者送货上门。所谓电子商务(Electronic Commerce)是利用技术、网络技术和远程技术,实现整个商务(买卖)过程中的电子化、数字化和网络化。人们不再是面对面的、看着实实在在的货物、靠纸介质单据(包括现金)进行买卖交易。而是通过网络,通过网上琳琅满目的商品信息、完善的物流配送系统和方便安全的资金结算系统进行交易(买卖)。

  人们已提出了包括通过网络来实现从原的查询、采购、产品的展示、定购到出品、储运以及电子支付等一系列贸易活动在内的完整电子商务的概念。在发达国家,电子商务已发展迅速,通过Internet进行交易已成为潮流。 

  在我国,电子商务的发展速度也很快。根据中国互联网信息中心最近提供的《中国互联网络发展状况统计报告》显示,网上购物已经由以前的尝试性购买向日常的生活习惯发展。

  但是这样的系统都是大型的企业应用,作为一般的中小企业,没有相应的技术条件去开发和维护这样规模的Web应用。但是中小企业也迫切需要跟上信息时代的步伐,JSP作为一种主流的动态网页技术为这样的需求提供了可能。

  1.3 系统研究背景 
  近年来,随着网络技术特别是Internet技术的普及和发展,电子商务的开发和应用成为一个热门领域,在线CD销售系统就是这其中的一员。

  开一家CD销售实体店,从商铺的租金、装修、水电暖等各类费用到雇佣店员、进货等等经营费用实在不是一笔小的开支。加之CD商品的消费人群主要由年轻人构成,店铺应该开在较为繁华的地点,所以成本必然会高很多。但是在网络上开店就不同了。由于电子商务的成本较低,使得在线销售CD,即开一家CD网络商店成为了更好的选择。例如用JSP技术,只用3万-4万元人民币就可以搭建一个CD销售网站,并且完全不依赖于操作系统、数据库及Web服务器。因为JSP技术秉承了Java优势,真正实现与平台无关,具有很高的开发效率和运行效率。这样的低门槛让更多的人可以加入电子商务的“淘金流”,因此在网络上开个CD销售小店已经成为了很多精明的商人的选择。

  除此之外,很多大型的CD销售企业在这样的网络销售浪潮中也选择了实体店网络化,依靠网络去占有、扩张客户。快速便利的互联网使这些企业拥有了更加广阔的客户群,高速发展的网络技术也为这些企业简化了销售管理工作。 

  1.4 本章小结 
  系统采用了B/S(浏览器/服务器)结构,它不但可以扩大商家的规模和影响力,而且可以减少企业的经营,提高工作效率,适用于一般的中小型企业本文研究的在线CD销售

  网上购物是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。系统实现了用户端在线浏览CD信息、开通网上购物车、在线提交订单等功能。员通过本系统可以添加CD及CD分类、管理用户、管理订单、销售量等。与传统销售行为相比,在线CD销售系统为用户和商家都提供了最高的效率和最便捷的手段。

  第2章 开发介绍 

  2.1 开发思想的介绍 

  本系统结合了传统模块化思想和当今颇受好评的面向对象思想,两种思想互相补充,将各自的优点发挥的淋漓尽致,为成功的开发系统提供了坚实的基础。下面对这两种思想进行简单的介绍。

  2.1.1 传统模块化思想的介绍 
  传统模块化思想将系统程序划分为若干个模块,每个模块完成一个子功能,模块既独立,相互之间又有一定的联系,把它们组成一个有机的整体,完成指定的功能。运用传统模块化思想开发系统的模型主要有:瀑布模型、原型模型、增量模型、螺旋模型等。软件生命周期的划分也是基于模块化思想的。

  2.1.2 面向对象思想的介绍 
  面向对象技术是以对象为核心的开发技术。该方法的出发点是使软件开发尽可能按照人对客观世界认识的规律和解决问题的方法于过程,以便使描述问题的空间与实现方法在结构上尽量一致。

  面向对象方认为,客观世界由对象组成。任何事物都是对象每个对象都有自己的内部状态和运动规律,不同对象彼此间通过消息相互作用、相互联系,从而构成了所要分析和构造的系统。系统中每个对象都属于一个特定的对象类。类是对具有相同属性和行为的一组相似对象的定义。应该按照子类、父类的关系,把众多的类进一步组织成一个层次系统,这样做了以后,如果不加特殊描述,则处于下一层次上的对象可以自动继承位于上一层次的对象的属性和行为。

  2.2 主要开发工具 
  本系统时基于JSP的在线购物系统的一种,其中数据库采用了当前流行的,便于安装和使用的Microsoft SQL Server数据库,同时,网页的制作采用了拥有可视化界面的Macromedia DreamWeaver8软件,以下对这几种主要技术和软件进行简要介绍。

  2.2.1 JSP 
  JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP[2]技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能[3]。

  (1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
    (2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。 
    (3)强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。 

  (4)多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以得到,并且其中许多已经可以顺利的运行于多种平台之下。

  2.2.2 SQL Server 2000数据库 
  SQL是英文Structured Query Language的缩写,意思为结构化查询。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。 

  SQL Server是一个关系数据库管理系统。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用

  SQL Server 2000可以作为Internet或内部网服务器的后端数据库,它与Web服务器协作,为Web服务器和浏览器提供信息。SQL Server 2000通过Web站点共享数据,它可以发布Web网页和接收电子邮件,使用Web浏览器可以直接访问SQL Server 2000数据库的数据,且易于学习和使用[4]。

  2.2.3 DreamWeaver8 
  Macromedia DreamWeaver8 是建立 Web 站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合在一起,其功能强大,使得各个层次的开发人员和设计人员都能够快速创建界面吸引人的基于标准的网站和应用程序。从对基于 CSS 的设计的领先支持到手工编码功能,DreamWeaver8 提供了专业人员在一个集成、高效的环境中所需的工具。开发人员可以使用 DreamWeaver8 及所选择的服务器技术来创建功能强大的 Internet 应用程序,从而使用户能连接到数据库、Web 服务和旧式系统。


  2.3 系统运行平台与开发环境 

  2.3.1 硬件配置(最低配置) 

CPU:Pentium 266MHz处理器

内存:128MB

硬盘:500MB空间

声卡:Diretx Sound兼容

显卡:Diect 3D(32MB以上)

2.3.2        运行平台 
本系统支持平台与开发工具选择如下:

操作系统:Microsoft Windows XP 

浏览器:IE6.0 

后台数据库系统:Microsoft SQL Server 2000

软件环境:J2sdk-1_4_2_13、Apache-tomcat-6.0、DreamWeaver8

  2.4 本章小结 
  本章介绍了开发的思想,主要开发的工具和系统运行平台与开发环境,要实现此系统,除了在思想上要要一个整体架构外,还要对软件熟悉,只要熟悉软件和应用好环境,开发过程中才会事半功倍。

  第3章 可行性分析与需求分析 

  3.1 可行性分析 

  基于前述系统介绍,下面就可行性、技术可行性和可行性对系统的整体可行性进行分析。

  3.1.1 经济可行性 
  对于一个小型商务网站的搭建,在开始阶段通常需要进行网站界面的设计、服务器的搭建、数据库的建设、网络地址的等,基于国内软件行业的现状,个人搭建一个小型商务网站,只要一次性投入3-4万元人民币即可,日常产生的费用很小,主要是对网站和数据库的维护费用。由于全智能软件的使用,对于销售行为和日常维护都非常简单,让一个员工可以做传统实体店中所有员工的工作,有效减少了资源的浪费,极大的节省了开支。另外,由于在线CD销售系统的网络移动特性,店主可以随时随地进行销售工作,真正做到生意不断。

  由于在线CD销售针对性较强,属于典型的需求导向型销售模式,所以库存量可以较为灵活,甚至可以采用JIT模式。

  3.1.2 技术可行性 (1) 操作界面的实现 
  在线CD销售系统的操作界面,无论用户界面还是管理员界面,实质上都只是一些静态网页的链接而已。现在市面上有很多网页制作软件,最常用的有Microsoft FrontPage、Macromedia DreamWeaver,此外,直接用HTML、JavaScript等语言编写网站也是较为常用的方法。

  (2) 数据库技术 
  在线CD销售系统对于数据库的主要操作为记录的插入、修改、删除和统计,可以采用目前流行的Oracle数据库、Microsoft SQL Server数据库以及免费的My SQL等[5]。

  (3) 网络地址的申请 
  目前在网络上开设在线购物商店,获得网址的方法主要有两种,一种是通过注册和交费向域名管理机构申请网络地址的使用权,这种方式需要一定的额,但是获得域名较为稳定,且容易记忆。另一种方式是通过淘宝网等在线销售平台,注册成为其会员后免费开通网络商店。这种方式获得的网络店铺几乎不产生费用,但需要服从在线购物平台的统一管理,在店面风格、经营方式等方面限制较多。

  3.1.3 法律可行性 
  对于网上购物,店主应该本着诚信的原则,对于产品质量和服务给予保障。目前国际上对于制定了一系列的法律予以规范和保障,在线CD销售网站的经营者应该严格执行相关的法律法规。

  此外,在开发过程中使用的部分软件均涉及到了版权的问题,如SQL Server 2000,但由于本系统并非用于商业用途,所以采用免费的教学版本,暂时不考虑软件版权问题。 

  3.2 用户需求分析

   3.2.1 用户功能需求 

  对于在线CD销售系统的用户,最终和最重要的功能无疑是在线购物行为的完成,针对在线购物行为,用户对系统的功能需求可以细分为以下几个方面:

  3.2.1.1 CD产品查询 (1) CD查找 
  在本功能中,用户需要能够按照多种方法迅速找到需要的CD产品,对应的,系统需要提供多种查询方法,如按CD名称查询、按歌手查询、按唱片公司查询、按销售排行查询和分类查询等。同时,系统应该能够准确反馈查询结果,这个结果可以只是一个简单的列表,CD详细信息的查询可以作为链接以节省系统开销,提高重用性。如果库存中没有用户所查询的CD产品,系统应该及时返回没有该CD的查询消息。

  (2) CD详细信息查看 
  在用户决定购买之前需要详细了结CD产品信息,包括CD名称、分类名称、歌手名、唱片公司、歌曲列表、价格和CD封面等。

  3.2.1.2 购买行为参考及实施 (1) CD销售排行查询 
  CD销售排行榜对于用户购买CD产品的行为有作用,排行榜的前几位通常在相当的一段时间里会有不错的销售成绩。

  (2)购物车 
  用户需要类似实体店购物车功能的一个模块来存放一部分不能马上做出购买决定,还需要综合权衡的CD产品。

  (3)填写提交及支付 
  对于决定购买的产品用户需要填写订单进行购买,系统必须提供一个填写和提交订单的平台,同是要提供足够安全的信道传送用户支付信息。

  (4)查看订单状态 
  用户对于已经完成的订单有查询其状态的需要,系统应该能够在接到用户查询请求时,将订单的实时状态准确及时地告知用户。

  3.2.1.3 用户个人信息设置及更新 
  用户在网站注册后,需要随时可以查询自己的个人信息,同时应该具有随时更新设置的权利。

  3.2.2 用户数据需求 
  经过,在线CD销售系统的用户需要运用的数据主要包括如下几种。

  3.2.2.1 用户需要获得的数据 
  CD产品信息及相关销售信息、用户积分等数据。

  3.2.2.2 用户需要存储的数据 
  (1)用户的个人信息

  (2)用户的购物车信息

  (3)用户订单信息


  3.3  本章小结 
  本章从可行性,技术可行性,可行性分析系统可以进行设计,也详尽说明了用户需求分析。

  第4章 概要设计和详细设计

  4.1 系统设计 

  4.1.1 系统工作原理图 

  系统采用三层结构,简单的来说,用户界面层通过统一的接口向业务层发送请求,业务层则按自己的规则将请求处理之后进行数据库操作,然后将数据库返回的数据封装成类的形式返回给用户界面层。这样用户界面层甚至可以不知道数据库的结构,它只要维护与业务层之间的接口即可。这种方式在一定程度上增加了数据库的安全性,同时也降低了对用户界面层开发人员的要求,因为它根本不需要进行任何数据库操作。三层架构的工作原理图如图4-1所示。

 SHAPE  \* MERGEFORMAT 

Java Bean通过返回对象的形式返回数据,在类的内部可以规定哪些数据可以访问,哪些数据是只读的,从而通过封装数据达到提高数据安全性的目的[6]。

  4.1.2  系统功能模块的划分 
  本系统的主要功能可以按客户界面和界面分为两部分,具体功能如下:

  4.1.2.1 客户界面部分 
  (1)用户注册

  (2)用户登陆

  (3)修改用户信息

  (4)CD查询(可以按关键字或者分类方式查找)

  (5)购物车

  (6)查看CD详细资料

  (7)查看订单信息

  (8)查看销量排行

客户界面功能模块图如图4-2所示。

      4.1.2.2 管理界面部分 
(1)库存CD 管理(查看、修改、删除)

(2)用户管理(查看、修改、删除)

(3)订单管理(查看订单清单、更新订单状态、删除订单)

(4)新CD管理(添加新CD、添加新分类)

(5)销售管理

管理界面的系统功能模块图如图4-3所示。


4.1.3 系统的结构设计 
根据三层架构和面向对象与模块化思想相结合的设计思想,系统的功能实现可以分为操作界面模块、业务处理模块(即Java Bean模块)和数据库模块。针对每一模块单独实现具体操作,之后进行系统模块间的和联合,构成整体系统功能[7]。


 SHAPE  \* MERGEFORMAT  


  4.1.3.1 操作界面模块 (1)用户界面 
  用户界面主要提供了用户注册、登陆、会员登记查询等用户信息查询功能,在线购买界面(包括CD信息等)、销量排行等CD信息查询功能的界面和购物车、订单信息等在线购买功能的界面。

  (2)管理用户界面 
  管理用户界面主要实现的功能有:提供CD管理功能(包括现有CD 的管理和新CD的添加管理)、用户管理功能、订单管理功能和销售统计功能的界面。 

  4.1.3.2 业务处理模块 
  本模块包含了在线CD销售系统的主要业务工作,相当于一个实体店中的核心营业员。以下用一个营业员所要做的工作来形象的表示系统改模块实现的功能[8]。

  (1)CD 
  CD管理包括的主要工作可以笼统的分为对CD的工作和对分类的工作。对于CD的工作可以分为现有CD的盘点、登记和分类管理,新到CD的登记和分类管理。而针对分类的管理工作,主要是对分类信息的维护工作,如及时添加新的分类或者及时删除过时信息。

  (2)订单管理 
  在线CD销售系统对于订单的管理与传统实体店营业员的工作略有不同。普通的CD店营业员只需要处理用户交给他的订单,也就是在线CD销售系统中已经提交成功的订单。但事实上,在用户提交订单前,会有更多的选择作为被选的选项,掌握了这些CD的清单,会帮助我们进一步了解该用户的购买动向及兴趣所在,从而实施更有针对性也更为有效的策略。很简单,如果我们能够为用户提供更多备选CD的信息,也许就可以促成购买行为的完成。同样的,如果能为用户推荐更多他们所感兴趣的CD,那么更多的交易行为就有可能发生。所以掌握用户购物车里的备选清单,对于下一步的销售有着非常重大的影响。

  而在用户购买动向和兴趣所在的收集方面,即使是有着多年销售经验的销售人员也很难在短时间内准确判断。传统销售中的这一弱点,在线销售系统可以很好的弥补。通常被用户放入购物车的CD一般都是他们所感兴趣的,购买的可能也就大很多,所以只要我们及时查看用户购物车资料,就可以了解到每个用户的购买习惯和动向。

  总而言之,在线销售系统在订单的管理中包含了已提交订单和购物车订单的管理。

  (3)用户管理 
  针对会员的管理,在线CD销售系统与传统实体店基本相同。对比实体店购买过程,首先要求会员会员资格,相当于用户网上的注册。随后进行购物时要出示会员资格证明,即网上的用户登陆行为。购买行为发生时,销售人员要登记该会员的编号和所购买的CD,以便随时更新该会员的,就是在线销售系统的用户管理行为。

  (4)销售 
  销售统计对于店主及时掌握销售情况有着重大的意义。由于功能强大的SQL Server数据库的使用,在线CD 销售系统在销售统计功能方面有着传统实体店无法想象的便捷和高效。从数据库记录中,系统管理用户可以任意查看各日、各周、各季度的销售记录,同时还可以分类查询,获得不同唱片公司、不同歌手、不同风格CD的销售情况。

  4.1.3.3 数据库模块 
  本模块主要进行数据的录入、更新、检索等工作,相当于传统实体店里认真负责而又分毫不差的库存管理员[9]。

  运用面向对象思想中类的概念,系统结构设计图如图4-4所示。


  4.2 数据结构设计 

  4.2.1数据库需求分析 

  对比传统实体店,并结合在线购物的特点,综合系统功能分析,本系统的需求信息主要有:用户分一般用户和管理员用户。订单分单张详细订单和总订单。每一张CD都从属于一种类型。一个用户可以购买多张CD。一个用户对应一张订单列表信息。一个列表对应多张订单信息。

  经过系统数据库的功能分析和需求,将数据项和数据结构做如下设计:

  (1) 管理员信息,包括数据项:用户名、密码

  (2) 普通用户,包括数据项:用户ID、用户名、密码

  (3) CD,包括数据项:CD编号、CD名称、分类编号等

  (4) CD分类,包括数据项:分类编号、分类名

  (5) 订单列表,包括数据项:订单编号、CD编号、购买数量

  (6) 订单,包括数据项:订单编号、用户编号、下单时间等


. SHAPE  \* MERGEFORMAT 

  4.2.2 数据库概念结构设计 
  根据数据项和数据结构的分析,在数据库概念结构设计部分可以设计出满足用户需求的各种实体以及实体之间的关系,为结构设计打下基础。实体包含各种具体信息,通过相互之间的作用形成层数据流动。

  本系统数据库中包含的实体有:管理员信息实体、普通用户实体、CD实体、CD分类实体、订单实体、订单列表实体。

  实体之间关系的E-R图如图4-5所示。

  管理员信息实体E-R图如图4-6所示。

  普通用户信息实体E-R图如图4-7所示。

  CD实体E-R图如图4-8所示。

  CD分类实体E-R图如图4-9所示。

  订单实体E-R图如图4-10所示。

  订单列表实体E-R图如图4-11所示。

 SHAPE  \* MERGEFORMAT 


 SHAPE  \* MERGEFORMAT 

 SHAPE  \* MERGEFORMAT 

 SHAPE  \* MERGEFORMAT 

  4.2.3 数据库逻辑结构设计 
  数据库概念结构设计完毕后,可以将数据库概念结构转化为SQL Server数据库系统所支持的实际数据模型,就构成了数据库的逻辑结构。

  在线CD销售系统数据库中各个表的设计结果如表4-1到表4-6所示。

(1) 每个表格表示数据库中的一个表,订单信息列表allorders如表4-1所示,记录每个用户的订单总信息。

表4- SEQ 表格 \* ARABIC 1  订单信息列表allorders


(2) CD信息列表cdName如表4-2所示,记录商店现有的CD信息。 

表4-2  CD信息列表cdName

(3) 商店员信息表cdAdmin如表4-3所示,记录管理员的帐号密码。

表4-3  管理员信息表cdAdmin


(4) 商店CD类别列表cdClass如表4-4所示,记录商店现有的CD分类。

表4-4  商店CD类别列表cdClass


(5)订单详细表orders如表4-5所示,记录单张订单的具体信息。

表4-5  订单详细表orders


(6)用户信息表shop_user如表4-6所示,记录商店的所有用户的详细信息。


4.2.4  数据流图 
根据“自顶向下、逐层分解”的思想,使用分解和抽象两种手段来控制系统的复杂度。根据前述分析,得出系统顶层数据流图如图4-12所示。

登陆功能数据流图如图4-13所示。

查询功能数据流图如图4-14所示。

购买功能数据流图如图4-15所示。




表4-6  用户信息表shop_user

 SHAPE  \* MERGEFORMAT 

 SHAPE  \* MERGEFORMAT 

 SHAPE  \* MERGEFORMAT 

 SHAPE  \* MERGEFORMAT 


  4.3  界面设计 
  为了提高代码的重用性,在线CD销售系统的界面采用框架形式,即页面头尾部分只需要设计一次。之后的jsp文件,其中只需写上以下两句代码,就可以看见页面头尾效果。

<%@include file=”inc/head.inc”>

<%@include file=”inc/tail.inc”>


  4.3.1  用户图形界面的设计 

  (1) 用户登陆模块设计 

  为了验证用户是否合法,系统需要用户提供用户名和密码来进行验证,这一功能由用户登陆模块完成。本模块需要运用login.java这个bean,来设计一个表单让用户输入用户名和密码。在本模块中,对于用户输入的用户名和密码,系统在发现错误时,应及时做出错误报告。

  用户登陆模块的预览效果如图4-16所示。

  (2) 在线购买功能模块设计 
  针对用户界面,由于“CD列表”和用户导航条等部分是只有用户界面可以看到的,所以将这两部分设计成一个新的框架形式,提高复用性。在本模块中用户可以浏览现有CD、用不同的方法查找CD(分类查询、关键字查询)、查看CD详细资料、把CD放入购物车、转到其他模块等。

  在线购买功能模块运行截图如图4-17所示。



图4-16  用户登陆模块的预览效果



图4-17  在线购买功能模块运行截图


(3) 我的购物车功能模块设计 
在本模块中,用户可以修改购买数量、删除已经选购的CD、提交购物车(在提交时可以简单附言说明)、清空购物车、继续购买或查询CD、转到其他模块等。 

(4) 订单信息功能模块设计 
本模块中用户可以看见自己已经提交的所有订单,可以查看订单的详细情况。确认订单时,系统采用弹出窗口的形式显示相信信息,在弹出窗口中可以进行付款。


订单信息功能模块的运行效果图如图4-19所示。


图4-19  订单信息功能模块的运行效果图

(5) 销量功能模块设计 
这个模块可以显示销量排名在前100的CD名称和数量。销量统计模块首先生成销量统计类op_sale_statistics的实例对象,然后调用该对象的getSaleNumOrder()方法,从数据库取出销量前100名的CD的名称和销售数量并显示在页面上。

销量统计功能模块的运行效果图如图4-20所示。


4.3.2 管理员图形界面的设计 (1) 管理员登陆功能模块设计 
为了验证管理员的身份,系统需要进行用户名和密码的验证,与用户图形界面的设计类似,本模块也需要运用login.java这个bean,设计一个表单让管理员输入用户名和密码。

(2) 现有CD管理功能模块设计 
在这个模块里,管理员拥有对现有CD的详细资料进行查看、修改CD名称、删除CD

等权限。



图4-20  销量统计功能模块的运行效果图


(3) 添加新CD功能模块设计 
在这个模块中,要添加一段JavaScript代码,对表单数据的合法性进行验证。

<script language="javascript">

  function checkform() {

      if (document.form1.cdname.value=="") {

             document.form1.cdname.focus();

             alert("CD名为空!");

             return false;

      }

      if (document.form1.Singer.value=="") {

             alert("歌手名为空!");

             document.form1.Singer.focus();

             return false;

      }

      return true;

  }

</script>

  (4) 添加新CD分类功能模块设计 
  这个模块列出了商店现有CD分类,管理员可以删除现有分类,也可以添加新的分类。但在删除操作之前,通过在连接的onclick事件里调用confirm方法,提醒用户是否真的要删除选中的信息,减少误操作。

  (5) 订单管理功能模块设计 
  管理员可以查看下订单用户的详细资料、查看订单的详细情况并且可以删除订单。

  订单管理模块中首先生成op_buy类的对象,然后调用该对象的ger()Order方法,取得当前商店的所有订单,分页显示在页面上,下单用户名提供链接,当管理员在用户名列单击某个用户名时,能够弹出新的页面显示该用户的详细资料。然后为每个订单提供查看订单详细情况和删除订单的链接,当管理员单击“详细情况”链接时能够弹出新的窗口显示订单信息。当管理员单击“删除”链接时弹出提示,提示管理员是否确认删除当前订单,如果管理员选择“是”,则从数据库删除该订单,如果选择“否”,则退回详细订单情况页面。

  (6) 用户管理功能模块 
  管理员通过这个模块对用户进行管理,其中包括:查看用户资料、修改用户资料、删除已存在用户等。

  4.4 本章小结 
  本章主要对系统的详细设计过程进行阐述。详细设计是在总体设计基础上进一步细化、具体化、化,主要内容有:模块设计是按照功能独立、规模适当的模块化设计方法,对总体设计中各大模块进一步分细,成为各功能小模块,并绘出它们之间的联系及各模块内容及功能,它们的算法及流程;数据分级分类及编码设计;数据库设计。详细设计阶段最重要的目标就是编写出可读性好、容易理解、容易测试、容易修改的程序,对系统实现具有重大意义。


  第5章 系统实现

   5.1 组件的编写 

  基于系统功能分析,首先利用JBuilder新建一个工程,在这个工程里新建议个包cdshop,然后在这个包下新建三个包cd、util和run。系统包图如图5-1所示。

 SHAPE  \* MERGEFORMAT 

5.1.1 util包 
如图4-12所示,util包里包含2个类,作用分别为:

(1) DataBase类:主要负责数据库的连接。

(2) dataFormat类:负责数据的格式转换,如将字符串格式化成HTML代码输出等。

5.1.2 cd包 
这个包中共有6个类,其作用为:

(1) allorder类:订单列表类。

(2) cd类:CD类,时CD实体的抽象。

(3) cdclass类:CD分类类,是CD分类实体的抽象。

(4) order类:订单类,是订单实体的抽象。

(5) shopcar类:购物车类,是购物车实体的抽象。

(6) user类:用户类,是用户实体的的抽象。

5.1.3  run包 
在系统run包下,共包含了6个类,分别是: 

(1) login类:管理用户登陆类。

(2) op_cd类:管理CD类,包括CD的查询、修改、删除、添加等。

(3) op_cdclass类:管理CD分类类,包括CD分类的查询、删除和添加。

(4) op_buy类:管理订单类,包括订单的查询、添加、修改和删除。

(5) op_user类:管理用户类,包括用户的查询、添加、删除和修改等。

(6) op_sale_statistics类:管理CD的销售统计。 

  5.2 部分源代码摘录及分析 

  5.2.1 数据库连接问题和实现 

  首先安装SQL Server数据库软件时,在选择【验证模式】时,选择混合验证模式,在学习的时候可以设置用户名sa,密码为空;利用JDBC驱动程序连接数据库一定要设置好驱动程序,使用数据源名称时,首先要在控制面板配置好数据源。

  本系统采用通过JDBC驱动连接数据库的方式链接数据库。需要在微软的官方网站下载Microsoft SQL Server Driver for JDBC驱动程序在本地机器上进行安装。

public Boolean connect(){

  try{

    Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”)

       newInstance();

       //注册驱动程序

String url=”jdbc:Microsoft:sqlserver://localhost:1433;DatabaseName

=cdstore”;

//连接字符串,cdstore为数据库名称

String user=”sa”;    //数据库用户名称

String password=””;     //数据库密码,这里设为空

conn= DriverManager.getConnection(url,user,password);    //获得连接

……

  5.2.2 JSP的大小写敏感

  JSP程序是区分大小写的,在编写JSP程序时一定注意不要将大小写混淆,例如:

String acd;与String Acd;

  他们代表两个不同的字符串形变量。用过其他编程的人最容易犯这个错误。

  另外,在浏览器的地址栏中输入的,访问JSP页面的地址也是区分大小写的。例如与http://127.0.0.1:8080/CDshop/A.jsp访问的将是两个不同的页面。

  5.2.3  用户登陆bean的编写 
  为了验证用户的合法性,系统需要用户输入用户名和密码,管理用户的登陆由JavaBean:login.java来完成。login类类图如图5-2所示。

 SHAPE  \* MERGEFORMAT 

  第四章中的图4-13中省略了部分方法,下面简单介绍getSql()方法。

  这个方法的功能是根据用户的不同获得不同的查询SQL语句,返回的是字符串型的SQL语句。其设计思路见图5-3所示。

 SHAPE  \* MERGEFORMAT 

  5.3  本章小结 
  通过本章的系统实现,最组件的的编写介绍,可以概要的说明系统的实现的前提条件和一些方法。

  第6章 系统运行评估 

  在线CD销售系统开发完毕到投入使用之前,需要进行一系列系统集成和确认测试。软件测试的根本目的应该是找出软件中存在的漏洞和问题,而开发人员往往不容易找出自己的程序中存在的漏洞和问题,所以从理论上讲,系统的测试工作应该由专业测试人员进行。但鉴于本系统为个人毕业设计作品,所以暂时由本人进行测试[10]。


  6.1软件测试概述 
  软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程。软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码和单元测试属于软件生存期中的同一个阶段。在结束这个阶段后对软件系统还要进行各种综合测试,这是软件生存期的另一个独立阶段,即测试阶段。

  6.1.1软件测试的目的 
  软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。

  第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。

  第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。


  6.1.2软件测试的原则 
  软件测试从不同的角度出发会派生出两种不同的测试原则,从用户的角度出发,就是希望通过软件测试能充分暴露软件中存在的问题和缺陷,从而考虑是否可以接受该产品,从开发者的角度出发,就是希望测试能表明软件产品不存在错误,已经正确地实现了用户的需求,确立人们对软件质量的信心。

  为了达到上述的原则,那么需要注意以下几点:
  (1) 应当把“尽早和不断的测试”作为开发者的座右铭。
  (2) 程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完。
  (3) 设计测试用例时应该考虑到合法的输入和不合法的输入以及各种边界条件,特殊情况要制造极端状态和意外状态,比如网络异常中断、电源断电等情况。
  (4) 一定要注意测试中的错误集中发生现象,这和程序员的编程水平和习惯有很大的关系。
  (5) 对测试错误结果一定要有一个确认的过程,一般有A测试出来的错误,一定要有一个B来确认,严重的错误可以召开评审会进行讨论和分析。
  (6) 制定严格的测试计划,并把测试时间安排的尽量宽松,不要希望在极短的时间内完成一个高水平的测试。
  (7) 回归测试的关联性一定要引起充分的注意,修改一个错误而引起更多的错误出现的现象并不少见。
  (8) 妥善保存一切测试过程文档,意义是不言而喻的,测试的重现性往往要靠测试文档。


  6.2 系统测试 

  6.2.1 系统入口测试要点 

测试要点:用户名、密码和验证码。

测试路径:用户名、密码验证码是否为真。

测试结果:为真,进入系统;为假,提示重新输入用户信息。

适用范围:管理员登录、用户登录等。


6.2.2 数据录入测试要点 
测试要点:数据录入类型。

测试路径:录入类型是否正确。

测试结果:录入类型正确能写入数据库增加新记录;否则提示重新输入。

当录入数据为数据表中限定的类型时,才能增加新的记录;若录入的数据类型不正确,则无法增加新的记录。

适用范围:添加类别、添加信息。


6.2.3  用户界面窗体设计测试 
窗体大小。大小要合适,控件布局合理;

缩放窗体。窗体上的控件应随窗体的大小变化而变化;

显示分辨率。必须在不同的分辨率的情况下测试程序的显示是否正常。

经过测试,发现系统用户界面窗体的大小在大部分台式机和笔记本电脑显示器上效果不一。后经分析发现,开发使用的笔记本电脑系宽屏设计,因此造成了一般尺寸的台式机显示器显示不正常的现象。及时修改页面大小可以修正此问题。其他功能未发现异常。

6.2.4 文本框的测试 
输入正常的字母或数字;

输入超长字符。例如在“名称”框中输入超过允许边界个数的字符,假设最多25个字符,尝试输入 26个字符,检查程序能否正确处理;

输入默认值,空白,空格;

若只允许输入字母,尝试输入数字;反之;尝试输入字母;

利用复制,粘贴等操作强制输入程序不允许的输入数据;

输入特殊字符集,例如,NUL及\n等;

输入超过文本框长度的字符或文本,检查所输入的内容是否正常显示;

  输入不符合格式的数据,检查程序是否正常校验,如,程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示;

  经过测试,系统在文本框输入功能中表现正常,在出现异常输入时能够及时报错并提醒用户重新输入。

  6.3 本章小结 
  本章首先是对系统的测试方法进行了讨论,找出最适合本系统设计的测试方法,最后分析本系统的测试过程。我们一定要注意好养成一个尽早和不断的测试的习惯,这样才能及早发现问题。


















   
  本系统设计并实现一个在线CD销售网站的模型。本网站采用了流行的三层架构,通过将整个系统分为不同的模块,大大降低了应用程序系统开发和维护的,提高了系统模块的复用性,同时使系统的可扩展性大大提高。由于JSP自身的优点,本网站对系统的要求较低,兼容性很好,为网站的推广使用提供了便利和可能。

  在线CD销售系统的开发过程中,通过对JSP技术的学习和运用,我充分体会到了JSP技术在系统移植方面出众的优点以及它的无限魅力。JSP技术正在不同的方式影响者企业、个人和开发人员。对于个人,JSP技术将网络商店变得更加普遍的同时也更加个性化。对于企业和网站开发人员,JSP技术让开发变得更加简便和实用,与传统开发方法相比执行效率也更高,它将改变企业的销售模式,使IT真正成为企业成功的重要因素。本系统也存在一些问题,界面不够美观、 购物车功能尚不完善,相信在今后不断的开发和维护过程中,系统的功能会一步步趋于完善,真正做到购销双方都得心应手。
























参考文献

1  徐成志, 申丁.组建中小型商务网站的研究[J]. 泰山学院学报, 2004, 26:54-60

2  夏阳,张强,陈小林.基于ASP.Net的电子商务网站设计[J].工程与设计,2004:11-15

3  余杰.JSP动态网站建设[M].北京:国防出版社,2002:101-125

4  胡铮.数据库管理[M].北京:华夏出版社,2006:56-65

5  姜力.SQL Server数据库设计与管理[M].北京:中国出版社,北京大学出版社,2006:7-55

6  玛依拉·别克强塔伊娃.基于JSP技术的通用考试系统[J]. , 2003:104-135

7  Robert Brunner. JSP: Practical Guide for Programmers (The Practical Guides). San Francisco: Morgan Kaufm, , ann Publisher, 2003:29-48

8  孙梅. JSP应用的安全性研究[J] .佳木斯大学学报(自然科学版), 2003,(04):56-78

9  任艳,李九龄.应用JSP进行数据库信息发布[J]. 计算机工程与应用, 2002,(07):36-72

10 张海藩.软件工程. 北京:人民邮电出版社, 2004:128-139

文章来源于兼职吧:http://www.jianzhi8.com/lunwen/4306.html