网上书店管理系统的设计与实现
 
伴随着Internet的蓬勃发展,网上书店作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网上书店正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的图书。
关键词数据库;jsp; 网上书店
1选题背景 
1.1开发背景
随着中国加入WTO,全球经济一体化的逐步深入,网上书店已是现代传统书店必不可少的经营策略之一了。目前,网上书店在国际互联网上可以实现的商务功能已经多样化,可以说从最基本的对外沟通展示功能、信息发布功能,在线图书展示功能、在线洽谈功能、在线交易功能
、在线定购功能、在线客户服务功能、在线网站管理功能等等,几乎以往传统书店功能都可以在互联网上进行电子化的高效运作。[1]
技术的进步对传统书店上网解决方案提出更严格的要求和挑战。为了保护传统书店的投资,书店上网解决方案应切合传统书店实际的需求和发展的趋向,使投入回报和管理效益最大化,传统书店在实施上网方案之前,必须对一系列问题进行科学的论证,如网上书店的需求分析、网上书店总体规划、网上书店系统的功能和实施方案、网上书店的传播与推广、运行网上书店系统的软件和硬件配置、网上书店的管理系统和管理方法等等[2]。网上书店具体实施的质素直接影响传统书店在Internet的实际效果和经济效益,这不仅是技术问题,同时也涉及到管理的因素。
1.2选题的目的和意义
本系统的主要目的是实现图书的在线销售,包括管理库房中的图书,以及管理用户的购物车,从而实现结帐等一系列功能,让用户足不出户就能够在网上书店购买到自己所需的图书,形成书店和用户双赢的局面。
电子商务发展迅速,最终会逐渐改变人们生活工作的各个方面,面对数字时代我们必然都是电子商务的参与者[3]。“We argue that adoption of e-commerce depends primarily on consumer behavioral intentions to engage in product purchases.”意即采用电子商务从根本上要依赖于消费者参加购买产品的行为意图。而通过建立网络书店销售管理系统,利用电子商务的优势同现有销售模式和流通渠道相结合,就可以给消费者带来很大的便利之处,就可以扩大消费市场,为书店的再发展带来新的商机,也为各地消费者提供便利,并且也降低了商业成本。
1.3国内外发展概况
Internet带给我们的不仅是无穷的信息,更是商业模式和消费观念的变迁,电子商务业已成为时尚。由于图书信息易于判断和选择而独具优势,最适合于网上交易,所以网上书店成了电子商务的先锋。[4]
说到网上书店,就不可能不提到亚马逊(Amazon——全球最大的网上书店[5]。它为读者提供了方便舒适的网上购物环境,丰富的图书品种(达310万以上),优惠的价格(折
扣率从20%50%),完善的金融结算制度,以及高效率的配送服务,并且实现了零库存运转。在不到五年的时间里,亚马逊创造了260多亿美元的市值,不仅成为美国电子商务的领头羊,而且在英国、德国、日本、加拿大以及中国建立了亚马逊网上书店[6]。在世界上拥有四千多万的客户,一直创造着电子商务界的神话[7]
在我国,据有关统计显示,网店在我国图书零售市场占据了约5%的份额。用户在网上采购时,一切信息和数据都通过网络传递和流动,一切均在瞬间完成,从而提高了采购效率[8]。而当当、卓越亚马逊两家企业凭借早“触网”的优势,目前已经占据了整个网上书店市场的80%。网上书店的出现,不仅丰富了图书零售业的格局,同时还满足了不同层次读者的需求。此外,如豆瓣、99读书人、红泥巴等特网上书店也风起云涌,培养了大批上网阅读的特定读者体。[9]
网上书店作为一种新的商业形式充满了勃勃生机,它对图书零售业的影响是巨大的,其方便、快捷、全天候的特点,使网上书店拥有广阔的前景。我们可以看到网上购物已经成为一种不可抵挡的时尚潮流。在中国,网上书店不仅有发展的必要,也有发展的基础,发展网上书店的各方面条件也日趋成熟。[10]
2网站实现解决方案
2.1数据库的实现
网络数据库,就是指把数据库技术引入到计算机网络系统中,借助于网络技术将存储在数据库中的大量信息及时发布出去,实现用户与数据库的实时动态交互。常用的网络数据库管理系统有SQL ServerOracleIBMDB2MySQLSybaseAccess等。选择一个合适的数据库是非常重要的。[11]
Access是一种桌面数据库,只适合数据量少的应用,在处理少量数据和单机访问的数据库时是很好的,效率也很高。但是它的同时访问客户端不能多于4个。Microsoft Access数据库有一定的极限,如果数据达到100M左右,很容易造成服务器iis假死,或者消耗掉服务器的内存导致服务器崩溃,表现为英文“Service Unavailable[12]
SQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Microsoft Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准S
QL语言,两者基本上都可以通用的。Microsoft SQL Server还有更多的扩展,可以用存储过程,数据库大小无极限限制。[13]
Oracle各方面都比较成熟,但对硬件要求高,用于数据完整性、安全性要求较高的场合,能在所有主流平台上运行,完全支持所有的工业标准,采用完全开放策略 [14]。可以使客户选择最适合的解决方案,对开发商全力支持。平行服务器通过使一组结点共享同一簇中的工作来扩展服务器的能力,提供高可用性和高伸缩性的簇的解决方案,获得最高认证级别的iso标准认证,多层次网络计算,支持多种工业标准,可以用odbc,jdbc,oci等网络客户连接,较复杂,同时提供gui和命令行,在windowsunix下操作相同,如果windows不能满足需要,用户可以把数据库移到unix中。其操作和设置比较复杂,适用于有一定操作经验的用户。[15]
MySQL是一个快速、多线程、多用户和强壮的SQL数据库服务器,是具有客户机/服务器体系结构的分布式数据库管理系统,是完全网络化的跨平台关系型数据库系统,是目前运行速度较快的SQL语言数据库。
MySQL具有功能强,使用简便、管理方便、运行速度快、安全可靠性强等优点,其主要特点
有(1)完全支持ISO8859-1标准。(2)同时访问数据库的用户数量不受限制。(3)可以保存超过5千万条记录,即处理大型数据。(4)完全支持多线程,适于多CPU使用。(5)提供多种语言的API接口,以及为windows等操作系统提供ODBC接口。(6)支持多种平台。在Unix系统上该软件支持多线程运行方式,从而能获得相当好的性能。在Windows NT系统上以系统服务方式运行,或者在Windows95/98系统上以普通进程方式运行。(7)开放式的分发,可以获得帮助且源代码公开。(8)提供多样的数据类型,支持多种语言。(9)支持灵活和安全的权限设置、密码加密等。(10)无内存泄露。[16]
2.2开发工具的选择与比较
目前,B/S架构主要使用4种语言:ASPASP.NETPHPJSP
2.2.1 ASP
ASP使用VBScript脚本语言,简单易懂,结合HTML代码,即可快速地完成网站的应用程序。使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。[17] Active ServerPages所使用的脚本语言均在WEB服务器端执行,客户端的浏览器不需要能够执行这
些脚本语言。可使用服务器端的脚本来产生客户端的脚本。ActiveX服务器组件具有无限可扩充性。可以使用Visual BasicJavaVisual C++、COBOL等程序设计语言来编写你所需要的ActiveX ServerComponent[18]但是Windows本身的所有问题都会一成不变的也累加到了它的身上。安全性、稳定性、跨平台性都会因为与NT的捆绑而显现出来。ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于Windows NT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失。
2.2.2 PHP
数据库连接PHP可以编译成具有与许多数据库相连接的函数。PHPMySQL是现在绝佳的组合。你还可以自己编写外围的函数去间接存取数据库。通过这样的途径当你更换使用的数据库时,可以轻松地修改编码以适应这样的变化。[19]PHPLIB就是最常用的可以提供一般事务需要的一系列基库。但PHP提供的数据库接口支持彼此不统一,比如对Oracle,MySQLSybase的接口,彼此都不一样。这也是PHP的一个弱点。[20]
2.2.3 JSP 
JSP继承了Java语言的特点,允许Web开发人员开发和维护与平台无关、信息丰富、动态的Web页面,它能使Web开发人员轻易搭建网络平台,建立起功能强大的Web网站。JSP可以把用户界面从内容层次中分离出来,使Web开发人员不必修改底层的动态内容,就可以修改整体的页面布局。
JSP在传统的网页HTML文件中加入Java程序片断(Scriptlet)和JSP标记,构成JSP页面(也可称为JSP文件)。Web服务器在遇到访问JSP页面的请求时,首先执行其中的程序脚本,然后将执行结果以HTML格式返回给客户,JSP页面中的程序脚本可以操作数据库、重定向网页、发送等。所有程序的执行都是在服务器端完成的,通过网络传送给客户端的仅是得到的结果,因此对客户浏览器的要求很低。jsp编译过程
绝大多数JSP页面可依赖于可重用、跨平台的组件(JavaBeansEnterprise JavaBean)来执行Web应用程序中较复杂的处理,Web开发人员能够交换和共享一些执行普通操作的组件。这种基于组件的开发方法可以加快Web应用程序的整体开发进度,并大大降低Web应用的开发成本
JSP的主要技术特点如下:
1)一次编写,随处运行。JSP是以Java语言作为基础的,它继承了Java语言的特点,主要运行在操作系统的JVMJava Virtual MachineJava虚拟机)上,能够运行JVM的操作系统就能运行JSP,如Windows系列、LinuxUnixAIX等。
2)有统一的技术标准。JSP是由Sun公司倡导、多家公司参与一起建立的一种动态网页技术标准,获得了大多数厂商的支持。
3)自由扩展的JSP标签。JSP可以让Web开发人员自由扩展JSP标签,Web开发人员还能自定义标签库,并能利用XML的强大功能。
4)执行性能高只需将JSP编译一次使之成为Servlet文件,当有相同的客户请求时,JSP服务器将产生一个该Servlet文件的一个线程来响应,而不是重新编译JSP文件,这样就大大提高了Web服务器端的响应速度[21]
5)开发工具多而强大。目前市面上有很多优秀的Java开发工具,如JBuilderEclipse等,开发JSP页面可以借助这些开发工具,高效地编写JSP代码[22]

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。