基于JSP的畅想空间电子商务系统.doc

基于JSP电子商务系统?(论文)

收藏

压缩包内文档预览:(预览前20页/共93页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:149932081    类型:共享资源    大小:141.25KB    格式:RAR    上传时间:2021-10-10 上传人:好资料QQ****51605 IP属地:江苏
20
积分
关 键 词:
基于 JSP 电子商务 系统 论文
资源描述:
基于JSP电子商务系统?(论文),基于,JSP,电子商务,系统,论文
内容简介:
大学毕业设计(论文)前言经过大学四年的理论课程的学习和校内外的实践,不仅丰富了自己的理论知识,而且也基本上具备了一些分析和解决简单问题的能力,但是即将踏向社会的我深知这些还远远不够,因此我利用毕业设计这个机会,在老师的指导下来完成基于JSP的电子商务系统这一课题,相信对这个课题的完成将对我的能力有更高层次的突破。在对网络商城的调查研究的基础上,设计主要包括后台数据库的建立及前端应用程序的开发两个方面,一方面要建出数据一致性和完整性强、数据安全性好的库另一方面则要应用程序功能完备,容易使用等特点。充分发挥计算机管理的优势,从而使商品的管理和销售,购买工作系统化、规范化、自动化。这篇论文详细和完整的讲述了关于电子商务系统的开发过程。在开发这个应用软件的过程中,软件工程在理论和方法上给了我很大的帮助。在开发软件之前,在整体构思上没有一个整体框架,通过对软件工程的认真研读,使整个设计开发过程有了一个明确的思路。通过软件工程在结构化设计中所给出的明确的方法。对将要开发设计的软件按照软件工程中绘制数据流图和数据词典的方法,一步一步绘制出软件的数据流图和数据词典,遇到不清楚的地方就认真阅读教材,通过对数据流图的绘制,使我在众多的需求中逐渐理清了思路,大致确定了应该在程序设计中包括哪些模块以及各个模块之间的应该具有哪些数据关系,确定了各个模块所应当完成的功能。如果没有软件工程中所介绍的方法,肯定会出现等到软件写了一半才发现以前所确定的内容需要改动,但这一改动就会造成前面所写的程序需要修改,而往往这种修改会使得程序错误增加,使得排错变得复杂和困难,所以,学习软件工程对开发软件的确很有帮助,使软件开发有步骤有条理。按照已经绘制出的数据流图,对软件进行详细的模块划分和功能确定,系统共分为四个模块:系统登陆模块,基本资料维护模块,购买管理模块,查询模块。对各个模块分别进行详细的流程设计,绘制出详细的流程图。由于有了数据流图,这一步就已经容易的多了,而且使整个软件设计结构清晰明朗了。由于本人经验不足,设计水平有限,设计过程中难免有错误,请老师和同学及时给予纠正。1 问题的定义1.1 课题背景从上世纪末至今,随着计算机技术和网络技术的飞速发展,特别是在Internet技术的推动下,全世界范围内的商业活动发生了一个巨大的变革,电子商务出现了。这种新的商业模式以其开放性、快捷性、协作性和低廉性等特征带给我国中小企业极其难得的发展机遇,提供了一个创新发展的选择机会。如何利用电子商务克服困难、改善自我,成为我国中小企业共同关心的问题。研究中小企业如何实施电子商务战略,不仅对中小企业自身的生存、发展意义重大,而且对保持国民经济的稳定发展也将产生积极的影响。根据国家经贸委统计的数字,我国各类中小企业总数超过1000万家,占企业总数的99%。中小企业总产值对国民经济的贡献量已达60%,就业人数占70%,无论是从中小企业的数量、生产总值还是就业人数来看,它们都对我国国民经济和社会稳定起到十分重要的作用。但与大企业相比,中小企业由于自身管理不完善以及人力、财力和物力的限制,在日益激烈的市场竞争中常常处于劣势,特别是在中国加入WTO之后,中小企业面对着经济全球化、国际竞争国内化以及国内市场国际化等严峻形势的考验,其生存发展遇到了前所未有的困难。在当前新经济形势下,电子商务是推动我国中小企业发展的契机,值得认真研究、探索出适合其的电子商务发展策略,推进和加强它们的电子商务,使之能够持续、快速、健康发展,尽快提高它们的竞争力和综合实力,以期在世界经济舞台上发挥越来越重要的作用4。1.2 电子商务概况电子商务(Electronic Commerce)即通过电信网络进行的生产、营销和流通活动,它不仅指基于因特网上的交易,而且指所有利用电子信息技术来解决扩大宣传、降低成本、增加价值和创造商机的商务活动,包括通过网络实现从原材料查询、采购、产品展示、订购到生产、 储运以及电子支付等一系列的贸易活动。电子商务主要含概了三个方面的内容:一是政府贸易管理的电子化,即采用网络技术实现数据和资料的处理、传递和储存;二是企业级电子商务,即企业间利用计算机技术和网络技术实现和供货商、用户之间的商务活动;三是电子购物,即企业通过网络为个人提供的服务及商业行为。按照这种思想,电子商务可以分成两大类:一类是企业与企业之间的电子商务(B to B),另一类是企业与个人之间的电子商务(B to C)。后者亦即我们所说的网上购物或在线购物。1.3 新系统的目标本系统主要针对网上商城的在线业务而设计的。目前部分的商品都是传统经营方式。顾客来到商城,然后走遍商城挑选自己想要的商品,再去服务员那里结帐付款。而现在只要顾客输入顾客号码和拥护密码。可以分门别类的查询自己想要的商品。选完以后可以通过银行的网上支付系统结帐。非常方便,由电脑操作计算不容易出错。1)客户界面部分a. 能够完成商品选购(可按分类方式查询商品,或者关键字查找)b. 购物车功能c. 查看商品详细信息情况。d. 用户注册。e. 用户登陆。f. 查看用户的定单信息。g. 修改用户个人信息。2)管理界面部分h. 现有商品管理:添加 修改 删除 查看。i. 用户管理:查看定单,更新定单付款,出货状态,删除定单。j. 填加新商品。k. 填加商品分类Fig1-2 Commodity borrow place organization machine composition figure1.4 系统业务流程图描述业务流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。业务流程图表达的是数据在系统各部件之间的流动的情况,而不是对数据进行加工处理的控制过程2。业务流程图基本符号:表1-1业务流程图基本符号表Table 1-1 Service flow chart basic symbol table图形符号图形名称图形符号图形名称表示实体表示输入输出表示外部实体表示数据表表示处理表示业务流业务流程图:客户会员数据管理员选购商品订单信息订单数据处理会员信息处理订单会员信息订单信息图1-1系统业务流程图Figure1-1 System service flow chart进货员管理员进货处理进货清单商品数据进货清单 图1-2 系统业务流程图Figure1-2 System service flow chart管理员查看订单送货清单订单数据分配订单任务送货员订单信息 图1-3 系统业务流程图Figure1-3 System service flow chart管理员送货用户订单库存数据 图1-4 系统业务流程图Figure1-4 System service flow chart1.5 系统具体目的a. 现对售货、购货的简易操作。b. 实现对库存商品的按类别方面的不同而进行分类查询。c. 实现购物车功能,使顾客可以任意的选购自己喜爱的商品。d. 实现对新商品的入库,旧商品的注销,更改商品的详细资料等简单操作,并且建立商品档案,方便进货。1.6 系统现行薄弱环节分析互联网以前所未有的速度发展,成为与报纸广播电视比肩的第四媒体,同时正以其便捷的传输形式改变着人们的消费方式,利用简单快捷低成本的电子通信方式,买卖双方不加冕就可以进行各种商贸活动,走向商业的互联网已成为网络经济的大势所趋。企业要向发展,不借助于网络变得不可能。在市场经济中,销售是企业运作的重要环节。一直以来使用的传统人工管理信息方式,存在着许多弊端。例如:销售效率低,保密性差,错误出现较多等,这给营销信息的查找,更新和维护带来了不少困难。2 可行性研究可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程。也就是在高层次上以抽象的方式进行系统分析和设计的过程。可行性研究的目的就是用最小的代价在最短的时间内确定问题是否能够解决2。2.1 技术可行性技术可行性分析主要是根据系统分析所得到的对待开发的软件、支撑软件、硬件环境和操作人员的要求以及有关的约束和限制,来分析现有的技术是否能实现待开发的软件。它包括可得到的硬件和支撑软件在功能和性能上是否满足系统的要求,是否有满足系统性能要求的算法,开发人员的技术水平能否胜任系统的开发等等。系统运行环境为Windows 2000或Windows XP操作系统。前台系统操作界面采用jsp开发的。原因是JSP是Java API家族的一部分,它拥有一般的Java程序的跨平台的特性,换句话说,就是拥有程序的对平台的独立性。即:Write once, Run anywhere!在 JSP页面中可以不直接将脚本程序嵌入,而只是将动态的交互部分作为一个部件加以引用。这样,一旦这样的一个部件写好,它可以为多个程序重复引用,实现了程序的可重用性。后台数据库采用MySQL 。MySQL作为数据库,简直就是易用的代名词,绝大多数数据库驱动的web应用程序都选择它做为自己的数据库。正因如此,MySQL被应用于很多WEB服务器上。虽然说MySQL的命令行工具确实有用,但要它完成任务有时实在是在跟时间过不去,除非你对SQL语法已经通吃,熟到炉火纯青的地步。正是由于这个原因,像phpMyAdmin之类的工具已经变得如此流行。MySQL开发者们已经开始使用他们自己的GUI工具,它们能够用来和本地或远程的MYSQL数据库进行连接。这些工具包括MySQL Administrator、MySQL Query Browser、以及MySQL Workbench。它们都是不错的图形界面的工具,简化了对MySQL数据库的创建和操作。2.2 经济可行性经济可行性的研究主要是对待开发软件的成本估算和成本/效益分析,以确定待开发软件是否有开发的价值。随着各大经销商的发展壮大,也对管理者提出了越来越严格的要求,这就要求对管理人员加强管理,改善管理手段,合理规划,提高利润。一方面,要合理的做好人员分配;另一方面,还要考虑到如何赢利。所以采用先进的管理手段满足不断增长的需求已经是势在必行的。假如没有本软件,那么在进行正常的业务时,就需要安排大量专人管理可户定单,查看库房信息,然后进行统计,决定是否定货等,这需要耗费大量的人力物力。而且这种管理方式容易出错,难以保证信息的正确性。 现在比较一下应用此管理软件的情形。在系统开发上,一台电脑的费用是5000元左右,操作系统是Windows XP、后台数据库采用Oracle前端采用jsp,其软件费用也不过5000元(正版)。开发人员1名,开发本软件最多3个月,假如花费是5000元,那么开发费用合计大概是1.5万元左右。若经销者采用此管理系统,首先在人员上可以节省到5名,这样每年就会节省几万元,这样光是人员方面节约的费用就可以用来开发一个很好的应用软件。所以如果应用此软件,不仅节约很多经济支出,而且减少用纸量,对于环境保护也有很大的好处。2.3 时间可行性由于本系统难度不是很大,所以不要求大量的时间,要是完善系统的功能,还是需要一定的时间的,根据毕业设计的时间安排以及老师和同学的指导帮助下,合理的安排好设计的进程,因此时间上是可行的。2.4 法律可行性本系统具有一定的权限设置,因此具有一定的安全性,设计过程中并没有侵犯和违反任何法律。2.5 操作可行性1)使用本软件人员要求有一定计算机基础的人员,系统管理员要求由计算机的专业知识。 2)管理人员经过软件开发人员的培训很容易熟练使用本软件。3)软件开发采用人性化设计,具有界面友好,操作简便等特点,易于使用者操作与理解。4)一名系统管理员,将进行专业培训,他们将熟练管理和维护本系统。2.6 可行性分析总结在进行可行性分析时,通常要先研究目前正在使用的系统,然后根据待开发系统的要求导出新系统的高层逻辑模型。有时可提出几个供选择的方案,并对每个方案从技术上、经济上、使用上、法律等进行可行性分析,在对各个方案进行比较后,选择其中的一个作为推荐方案2。3 需求分析3.1 总体目标网络商城的日常运做的重要环节是销售,本系统的开发能够使业务正规化和科学化,提高效率并降低出错率。并且具有较高的保密性。,根据操作者的使用权限的不同,对系统进行不同操作,达到信息保密的目的;标准件销售管理系统可以及时通过信息技术把企业数据快速转化为企业信息,进而为相关管理者提供决策依据。 电子商务系统涉及到一定的专业知识和业务流程,要开发一个具有一定使用价值的通用经销软件,必须深入了解销售标准件的业务。针对这一特点,我进行了大量的实地调研,在早期的需求分析中遇到很大的困难,但是经参考大量文献,并到实际的部门进行了调研,对此做了合理的需求分析,在此基础上制定了合理的方案。3.2 具体目标网络商城前台的基本功能: 1.会员系统:基本会员注册、会员登录认证。 2.商品陈列系统:商品模糊查询、商品详细数据介绍。 3.添加商品到采购车、采购车内容的删除修改。 4.结帐系统:订单内容的确定及送货付款方式的选择。 5.订单查询系统:根据会员的登录查出会员历史订单及订单的详细信息。3.3 系统数据流图及功能分析3.3.1 数据流图数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被 处理的逻辑过程。数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此是分析员与拥护之间极好的通信工具。此外,设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑这样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点2。3.3.2 数据流图的基本符号及其含义图形符号名称符号说明实体记述系统之外的数据提供或数据获得组织机构或个人,框内为实体名称PM C处理记述某种业务的手工或计算机处理其中,PM区记述处理标号C区记述处理名称SDN数据存储记述与处理有关的数据存储,DN区记述存储的标号,S区记述存储数据的名称FM数据流记述数据流的流动方向,FM记述数据流的名称表3-1 数据流图符号说明表Table 3-1 Data stream figure symbols tableTOP图:F10F2F4F3F11F1F5F6F7F8F9P0电子商务系统管理员顾客顾客管理员图3-1 TOP图Fig 3-1 TOP figure表3-2 TOP图符号说明Table 3-2 TOP figure nomenclature table序号数据流名数据流含义序号数据流名数据流含义1F1商品信息7F7处理后的商品基本信息2F2顾客信息8F8处理后的顾客基本信息3F3交易信息9F9处理后的交易基本信息4F4管理员登陆信息10F10处理后的管理员基本信息5F5顾客登陆信息11F11查询结果6F6查询条件一级细化:F1商品基本信息表D1P1商品信息处理 图3-2 商品信息处理数据流图Fig 3-2 Commodity information processing data stream figureF2顾客基本信息表D2P1顾客信息处理图3-3 顾客信息处理数据流图Fig 3-3 Customer information processing data stream figureF3P3交易信息处理交易基本信息表D3图3-4 交易信息处理数据流图Fig 3-4 Business also the information processing data stream figureF4P4管理员登陆处理管理员基本信息表biao表表D4图3-5 管理员信息处理数据流图Fig 3-5 Manager Information processing data stream figureF5P5顾客登陆处理顾客基本信息表D2图3-6 顾客登陆处理数据流图Fig 3-6 Customer lands the processing data stream figureF11F6P6顾客查询处理图3-7顾客查询处理数据流图Fig 3-7 Customer inquires the processing data stream figure表3-3一级细化数据流图符号说明Table 3-3 level of thin data streams figures nomenclature 序号数据流名数据流含义序号数据流名数据流含义1F1商品信息5F5顾客登陆信息2F2顾客信息6F6顾客查询条件3F3顾客交易信息7F11查询结果4F4管理员登陆信息二级细化:F1.1P1.1新货录入处理商品基本信息表D1P1.3商品修改处理P1.2旧货删除处理F1.2F1.3F6.1F11P6.1商品查询处理图3-8商品信息处理二级细化数据流图Fig 3-8 Commodity information processing two levels of thin data streams figuresF2.1P2.1顾客注册处理顾客基本信息表D2P2.3顾客修改处理P2.2顾客注销处理F2.2F2.3图3-9顾客信息处理二级细化数据流图Fig 3-9 Customer information processing two levels of thin data streams figuresF3.1交易基本信息表D3P3.2供货处理F3.2P3.1购买处理F6.2F11.2P6.2交易查询处理图3-10交易信息处理二级细化数据流图Fig 3-10 Business also the information processing two levels of thin data streams figuresF4.1P4.1登陆信息添加管理员登陆信息表D2P4.3密码修改处理P4.2登陆信息注销F4.2F4.3图3-11管理员登陆信息处理二级细化数据流图Fig 3-11 Manager lands the information processing two levels of thin data streams figuresF5.1F5.2顾客基本信息表D4P5.1顾客登陆处理图3-12顾客登陆信息处理二级细化数据流图Fig 3-12 Cusstomer lands the information processing two levels of thin data streams figures序号数据流名数据流含义序号数据流名数据流含义1F1.1要录入的新货信息8F4.2要注销的管理员登陆信息2F1.2要删除的旧货编号9F4.3要修改的管理员登陆密码3F1.3要修改的商品信息10F5.1登陆信息4F2.1要注册的顾客信息11F5.2要修改的顾客登陆密码5F3.1要注销的顾客购买帐号12F6.1查询货物信息条件6F3.2要修改的顾客信息13F6.2查询交易信息条件7F4.1要注册的管理员登陆信息14F11查询结果表3-4 级细化数据流图符号说明Table 3-4 Two levels of thin data streams figures nomenclature3.4 数据字典的设计数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合4。使得用户和系统分析员对于输入、输出、存储成分和中间计算有共同的理解 。一般来说,数据字典应该有对下列4类元素的定义组成:a. 数据流分量(数据元素)b. 数据流c. 数据处理d. 数据存储 数据字典的实现采用卡片形式书写数据字典,每张卡片上都保存描述一个数据的信息。这样做更新和修改起来比较方便,而且还能单独处理描述每个数据的信息2。1) 数据元素卡:对数据元素的描述。名称:编号名称:名称别名:ID别名:BookName描述:商品的唯一标识描述:商品的名称定义:字符型(10)定义:字符型(40)位置:F1;D1,D5位置:F1;D1名称:类别名称:厂家别名:BookClass别名:Autherr描述:商品类别描述:商品的作者定义:字符型(10)定义:字符型(25)位置:F1;D1位置:F1;D1 名称:价格名称:出厂日期别名:Publish别名:Bookno描述:商品的价格描述:商品出厂日期定义:整型(8)定义:日期(20)位置:F1;D1位置:F1;D1 名称:操作日期名称:数量别名:Jdate别名:shuliang描述:商品的操作日期描述:商品数量定义:日期(8)定义:整型(4)位置:F1;D1位置:F1;D1名称:姓名名称:帐号别名:UserName别名:Id描述:顾客的姓名描述:顾客帐号定义:字符型(20)定义:字符型(20)位置:F2;D3位置:F2;D3 ,D5 名称:性别名称:密码别名:Sex别名:PassWord描述:顾客的性别描述:顾客的登陆密码定义:字符型(2)定义:字符型(20)位置:F2;D3位置:F2;D3 名称:类别名称:电话号码别名:Kind别名:Phon描述:顾客的类别描述:管理员的电话号码定义:字符型(10)定义:字符型(10)位置:F2;D3位置:F2;D3 名称:操作日期名称:已购买数量别名:RDate别名: BorrowNo描述:顾客的操作日期描述:顾客已购买数量定义:日期(8)定义:数值(2)位置:F2;D3位置:F2;D3 名称:购买时间名称:交货时间别名:BorrowTime别名:ReturnTime描述:购买的时间描述:交货的时间定义:日期(8)定义:日期(8)位置:F2;D4位置:F2;D4 名称:号码名称:密码别名:AdminUser别名:Adminpass描述:管理员的登陆号码描述:管理员的登陆密码定义:字符型(20)定义:字符型(20)位置:F3;D5位置:F3;D52) 数据流卡:对数据流图中的数据流的定义,主要是系统输入与输出的数据流。编号:F1编号:F1.1名称:商品信息名称:要录入的新货基本信息组成:F1.1+F1.2+ F1.3组成:商品编号+商品名称+类别+厂家+出产地+出厂日期+操作日期+数量编号:F1.2编号:F1.3名称:要删除的旧货基本信息名称:要修改的商品基本信息组成:旧货的编号组成:商品编号+新的(商品名称+类别+作者+产地社+产地日期+操作日期+数量) 编号:F2编号:F2.1名称:顾客信息名称:要注册的顾客信息组成:F2.1+ F2.2+ F2.3组成:顾客帐号+密码+姓名+性别+购买数量+操作日期 编号:F2.2编号:F2.3名称:要注销的顾客信息名称:要修改的顾客信息组成:要注销的顾客的帐号组成:顾客帐号+新的(密码+姓名+性别+购买数量+顾客类别+操作日期) 编号:F3编号:F3.1名称:提货信息名称:购买信息组成:F3.1+ F3.2组成:帐号+商品编号+购买日期 编号:F3.2编号:F4名称:供货信息名称:管理员登陆信息组成:顾客帐号+商品编号+日期组成:F4.1+F4.2+4.3 编号:F4.1编号:F4.2名称:管理员要注册的登陆信息名称:要注销的管理员登陆信息组成:管理员帐号+密码组成:管理员帐号 编号:F4.3编号:F5名称:要修改的管理员登陆信息名称:顾客登陆信息组成:商品编码+新的帐号组成:F5.1+F5.2 编号:F5.1编号:F5.2名称:顾客登陆基本信息名称:顾客要修改的密码组成:顾客帐号+密码组成:顾客帐号+新的密码 编号:F6编号:F6.1名称:查询条件名称:查询商品条件组成:F6.1+F6.2组成:按类别编号:F6.2编号:F7名称:查询交易信息条件名称:顾客查询结果组成:顾客帐号组成:查询结果3) 数据处理卡: 对输入、输出的数据流的处理的描述。编号:P1编号:P1.1名称:货物信息处理名称:新货入库处理说明:货物信息维护说明:将新货信息录入库中 编号:P1.2编号:P1.3名称:旧货除处理名称:商品信息修改说明:根据商品编号把旧货所有信息删除说明:根据商品编号修改商品信息 编号:P2编号:P2.1名称:顾客信息处理名称:顾客注册处理说明:顾客信息维护说明:添加顾客基本信息 编号:P2.2编号:P2.3名称:顾客注销处理名称:顾客信息修改处理说明:将要注销的顾客信息全部删除说明:将要修改的顾客信息修改 编号:P3编号:P3.1名称:交易信息处理名称:购买处理说明:日常交易维护说明:添加购买信息 编号:P3.2编号:P4名称:交货处理名称:管理员登陆处理说明:修改交易信息说明:管理员登陆信息维护 编号:P4.1编号:P4.2名称:管理员登陆信息注册处理名称:管理员登陆信息注销处理说明:添加管理员注册信息说明:将要注销的管理员登陆信息删除 编号:P4.3编号:P5名称:管理员密码修改处理名称:顾客登陆处理说明:修改管理员登陆密码说明:顾客登陆信息维护编号:P5.1编号:P6名称:顾客修改密码名称:查询处理说明:修改顾客登陆的密码说明:进行查询 编号:P6.1名称:查询处理说明:查询顾客要查询的信息4) 数据存储卡: 用于描述数据流图中的数据存储。编号:D1编号:D2名称:货物基本信息表名称:顾客基本信息表组成:货物编号+货物名称+类别+厂家+产地+出厂日期+操作日期+数量组成:顾客帐号+姓名+密码+类别+性别+电话+操作日期+已购买数量 编号:D3编号:D4名称:交易信息基本表名称:管理员登陆信息基本表组成:货物编号+购买帐号+提货日期组成:管理员帐号+密码93 4 总体设计软件设计是开发阶段中最重要的步骤,它是软件开发过程中质量得以保证的关键步骤。设计提供了软件的表示,使得软件的质量评价成为可能。同时,软件设计又是将用户要求准确地转化成为最终的软件产品的唯一途径。另一方面,软件设计是后续开发步骤及软件维护工作的基础。如果没有设计,只能建立一个不稳定的系统,而且难于测试。经过需求分析阶段的工作,系统必须“做什么”已经清楚了,现在决定“怎样做”的时候了。总体设计的基本目的就是回答“概括地说,系统应该如何实现这个问题?”,因此,总体设计又称概要设计或初步设计4。4.1 总体设计的任务及内容4.1.1 总体设计的任务a. 将系统划分成物理元素程序、文件、数据库、人工过程和文档等。b. 设计软件的结构,即将需求规格转换为软件体系结构、划分出程序的模块组成、模块间的相互关系 、确定数据结构和算法等。4.1.2 总体设计的设计原理a. 模块化:把程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,把这些模块集合起来构成一个整体,可以完成指定的功能满足拥护的需求。b. 抽象:是人类在认识复杂现象的过程中使用的最强有力的思维工具。抽象就是抽象出事物的本质特征而暂时不考虑它们的细节。c. 逐步求精:与抽象互补的概念,集中精力解决要解决的问题而尽量推迟对问题细节的考虑。d. 信息隐藏和模块化:信息隐藏的原理是在设计和确定模块时,使得一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说,是不能访问的。e. 模块独立:模块的独立概念是模块化、抽象信息隐蔽的局部化概念的直接结果。开发具有独立功能而且和其他模块之间没有过多的相互作用的模块,就可以做到模块独立。也就是说,使每个模块完成一个相对独立的特定子功能,并且和其他模块之间的关系很简单。模块的独立程度由内聚和耦合两个标准来衡量。模块的划分应该尽量做到高内聚、低耦合。4.2系统的模块结构4.2.1 系统的层次图/HIPO图层次图是用来描绘软件的层次结构,而HIPO图是“层次图加输入/处理/输出图”的英文缩写。结构化设计技术把用数据流图表示的系统逻辑模型转变为HIPO图表示的系统层次模块结构,且每个模块具有单入口单出口。结构化设计技术的核心是模块分解设计,模块上系统结构图的主要元素。其设计思想是,采用自顶向下、逐层分解的方法,先给出总的模块功能,再逐层分解,使其分为多个大小适当,功能明确,具有一定独立性且容易实现的模块,从而把一个复杂的系统设计转变成为多个简单模块的设计。该系统的功能模块图如下所示:修改购买数量图4-1客户部分HIPO图Figure 4-1 customer partial HIPO chart顾客登陆在线购物查看购物车查看定单信息商品查询购买查看商品详细信息顾客注册登陆删除已经选购的商品提交购物车清空购物车继续填加查看定单信息购买查看商品详细信息购买管理员登陆现有商品管理填加新商品填加商品分类定单管理顾客信息管理删除旧货填加新货填加商品分类删除商品分类查看用户详细资料修改用户详细资料删除用户图4-2管理员部分HIPO图Figure 4-2 management partial HIPO chart4.2.2 系统的IPO图IPO图是输入、处理、输出图的简称,它是美国IBM公司发展完善起来的一种图形工具,能够方便地描绘输入数据、对数据的处理和输出数据之间的关系。IPO图中所使用的图形符号少又简单,因此很容易学会使用这种图形工具。它的基本形式是在左边的框中列出有关的输入数据,在中间的框中列出主要的处理,在右边的框内列出产生的输出数据2。编 号1.1模 块系统登陆模块被调用系统调用无输入登陆信息输出登陆提示处理用户切换图4-3系统登陆模块IPO图Fig 4-3System lands the module IPO figure编 号1.2模 块基本资料维护模块被调用系统调用无输入商品信息/顾客信息/管理员登陆信息输出商品信息表/顾客信息表/管理员登陆信息表处理基本资料的添加/删除/修改图4-4基本资料维护模块IPO图Fig 4-4Basic document maintenance module IPO figure编 号1.3模 块日常维护模块被调用系统调用无输入购买信息输出购买信息表处理更改交易信息表图4-5日常维护模块IPO图Fig 4-5 Basic document maintenance module IPO figure编 号1.4模 块顾客查询模块被调用系统调用无输入商品信息表/交易信息表输出商品信息/顾客购买信息处理顾客查询搜索图4-6顾客查询模块IPO图 Fig 4-6 Customer inquires the module IPO figure编 号2.1模 块顾客登陆被调用系统调用无输入顾客购买帐号/密码输出登陆提示处理验证顾客身份图4-7顾客登陆IPO图Fig 4-7 Customer lands the IPO figure编 号2.2模 块管理员登陆被调用系统调用无输入管理员帐号/密码输出登陆提示处理验证管理员身份图4-8管理员登陆IPO图Fig 4-8 Manager lands the IPO figure编 号2.3模 块商品信息管理被调用系统调用无输入商品信息输出商品信息表处理商品信息的添加/删除/修改图4-9商品信息管理IPO图Fig 4-9 Commodity information management IPO figure编 号2.4模 块管理员登陆信息管理被调用系统调用无输入管理员登陆的信息输出管理员登陆信息表处理管理员信息的添加/删除/修改图4-10管理员登陆信息管理IPO图Fig 4-10 Manager lands the information management IPO figure编 号2.5模 块顾客信息管理被调用系统调用无输入顾客信息输出顾客信息表处理顾客信息的添加/删除/修改图4-11顾客信息管理IPO图Fig 4-11 Customer information management IPO figure编 号2.6模 块交易管理被调用系统调用无输入交易信息输出顾客购买信息表处理购买信息添加后更新交易信息表/顾客信息表/商品信息表图4-12交易管理IPO图Fig 4-12 Business the book to manage the IPO figure编 号2.7模 块交易管理被调用系统调用无输入提货信息输出购买信息表处理添加提货信息后更新交易信息表/顾客信息表/商品信息表图4-13交易管理IPO图Fig 4-13Business manages IPO figure编 号2.8模 块商品信息查询被调用系统调用无输入查询条件输出查询商品信息结果处理查询图4-14商品信息查询IPO图Figure 4-14 Commodity information inquire the IPO figure编 号2.9模 块交易信息查询被调用系统调用无输入查询条件输出查询的交易信息结果处理将某个顾客信息添加图4-15交易信息查IPO图Fig 4-15Business the information to inquire the IPO figure编 号3.1模 块新货信息录入被调用系统调用无输入新货信息输出商品信息表处理将新货信息录入商品信息表图4-16新货信息录入IPO图Fig 4-16 New Commodity information inputs the IPO figure编 号3.2模 块旧货信息删除被调用系统调用无输入要删除的旧货的编号输出删除后的记录处理将旧货删除图4-17旧货信息删除IPO图Fig 4-17Old Commodity information deletes the IPO figure编 号3.3模 块商品信息修改被调用系统调用无输入要修改的商品信息输出修改后的商品信息表处理商品信息修改图4-18商品信息修改IPO图Fig 4-18 Commodity information modify the IPO figure编 号3.4模 块顾客信息注册被调用系统调用无输入交易信息表输出新的交易信息表处理删除某个交易信息处理图4-19顾客信息注册IPO图Fig 4-19 Customer information registers the IPO figure编 号3.5模 块顾客信息注销被调用系统调用无输入交易信息表输出新的交易信息表处理修改某个交易信息处理图4-20顾客信息注销IPO图Fig 4-20Customer information cancels the IPO figure编 号3.6模 块顾客信息修改被调用系统调用无输入顾客购买信息表输出购买信息处理对顾客查询图4-21顾客信息修改IPO图Fig 4-21Customer information revises the IPO figure编 号3.4模 块管理员登陆信息注册被调用系统调用无输入顾客信息输出顾客信息表处理顾客信息添加图4-22管理员登陆信息注册IPO图Fig 4-22 Manager lands the information to register the IPO figure编 号3.5模 块管理员登陆信息注销被调用系统调用无输入顾客购买帐号输出注销后的顾客信息表处理顾客信息删除图4-23管理员登陆信息注销IPO图Fig 4-23 Manager lands the information to cancel the IPO figure编 号3.6模 块管理员登陆信息修改被调用系统调用无输入顾客信息输出修改后的顾客信息表处理顾客信息修改图4-24管理员登陆信息修改IPO图Fig 4-24Manager lands the information to revise the IPO figure4.3 接口设计4.3.1 外部接口a. 用户界面:在用户界面部分,根据需求分析的结果,设计一个简洁实用易操作的界面。用Java语言进行编程,由JSP进行页面的设计,用户直接点击相应的功能按钮,即可完成相应的功能。b. 软件接口:使用服务器应用软件TOMCAT 6.0提供到MySQL的用户接口访问数据库。c. 硬件接口:在输入方面,用键盘,鼠标进行输入。在输出方面,可以使用显示器。4.3.2 内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。4.4 数据库设计数据库是建立数据库应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)5。4.4.1 概念结构设计 将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。它是整个数据库设计的关键4。概念结构的主要特点是:a. 能够真实,充分地反映现实世界。b. 易于理解,易于更改。c. 易于向关系、网状、层次等各种数据模型转换。描述概念模型的有力工具是E-R图。局部E-R图如下:顾客ID用户名密码真实姓名性 别注 册时 间注册时IP地 址联系电话邮编E-mail图4-25顾客E-R图Fig 4-25Customer E-R figure商品名称商品编号商品类别图4-26商品类别E-R图Fig 4-26 Commodity categories E-R figure数量操作日期价格编号商品厂家类别名称图4-27商品实体E-R图Fig 4-27 Commodity entities E-R figure密码帐号管理员图4-28管理员实体E-R图Fig 4-28 Manager Entity E-R figure提货日期购买商品购买日期商品编号购买帐号 图4-29商品交易E-R图Fig 4-29Business borrow and return E-R figure 商 品 分 类分类编号分类名称图4-30商品分类体实体的E-R图Char.4-30 Commodity Class entity E-R char ID是否发货是否已付款用户IP备注总金额交货时间提交定单时间用户编号定单号定单 图4-31定单实体的E-R图Char.4-31Order form entity E-R chart varchar2 全局E-R图如下:nm1nmmnn11nn管理员购买提货商品管理管理属于商品类别属于顾客类别顾客图4-32全局E-R图Fig 4-32 Overall situation E-R figure4.4.2 关系模式设计由系统的概念模型得出关系模式。主要原则及实现方法如下:a. 一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。b. 一个实体的联系转换为关系模式时,应首先确定该联系的类型,再确定相应的键:1) 如果关系的类型为1:1,那么每个实体的键均为这个关系的侯选键,可以二选一作为这个联系的键。2) 如果关系的类型为1:n,那么应把一端实体键移动到n端,与n端实体键共同组成这个联系的键。3) 如果为弱实体集,可为其增加一个强制属性作为键。4) 如果联系的类型为m:n,那么这个联系的键是两个实体的键的复合,即这个关系的键一定为复合键。c. 进行规范化处理,求出关系模式中的最小依赖集,并规范到三范式。实体和属性的定义:商品类别表(种类名称,种类编号)主键是种类编号。My-Book(BookName,Id).The primary key is Id商品(商品编号,商品名称,类别,生产厂家,操作日期,价格,数量)主键为商品编号。My-Book(Id,BookName,Bookclass,Authorr,Publish, JoinDate,Prince,Amunt).The primary key is Id.顾客(顾客帐号,用户姓名,密码,类别,性别,电话,操作日期,邮编,地址,注册时间,用户注册ID)主键是顾客帐号。My_Users(Id,UserName,Password,Kind,Sex,Telephon,RDate, Email ,addressBorrowo, RegTime,RegIpAddress). The primary key is RId.管理员(登陆号码,密码)主键是登陆号码。My_BookAdminuser (AdminUser,AdminPass) .The primary key is AdminUser.联系: 一个顾客可以购买多种不同的商品,而一种商品也可以被多个不同的顾客所购买。一个管理员可以维护多种商品信息,而一种商品也可以有多个管理员管理。4.4.3 物理数据库设计数据字典是物理数据库的具体体现,主要规定各关系的名称、各列的数据类型、长度、小数位、完整性约束等。表4-2顾客信息表Table 4-2 Commodity information table列名类型长度允许空顾客帐号varchar220NO姓名varchar220NO密码varchar220NO性别varchar22NO顾客类别varchar210NO电话号码varchar210NO操作日期datetime8NO已购买数量int2NO地址varchar220NO邮编varchar260NO注册时间datetime8NO注册IDvarchar220NO表4-3商品信息表Table 4-3 Commodity information table列名类型长度允许空商品编号varchar210NO商品名称varchar240NO商品类别varchar210NO生产厂家varchar225NO价格varchar28NO操作日期Datetime8NO数量int4NO表4-5商品类别表Table 4-5 Commodity categories table列名类型长度允许空类别编号varchar210NO类别名称varchar230NO表4-6管理员表Table 4-6 Manager table管理员号码varchar210NO管理员密码varchar210NO4.5 安全保密设计4.5.1 登陆用户的安全性系统设计了用户登陆界面,每个合法用户有一个登录名和密码,该密码由用户自行维护,从而实现对用户的身份验证。数据保存、传输过程的安全性,由于数据的一切操作都的服务器上进行,所以保存和传输上都相对安全,系统管理员对系统进行监管。4.5.2 操作安全性对授权顾客的帐号的授予,如果是管理员,那么还可以为本系统添加新顾客信息以及修改他们的信息和密码。5 详细设计5.1 详细设计的目标及任务详细设计阶段的根本目标是确定应该这样具体地实现所需要的系统,也就是说,经过这个阶段的设计工作,应该的出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。详细设计阶段的任务不是具体的编写程序,而是要设计出程序的“蓝图”,程序员再根据这个蓝图写出实际的程序代码.详细设计基本上决定了最终的程序代码的质量5。5.2 输入输出设计5.2.1 界面设计用户界面设计是一个迭代的过程,也就是说,通常要先建立设计模型,再用原型实现这个设计模型,并由用户试用和评估,然后根据用户意见进行修改5.2.2 数据输入设计用户的大部分时间用在选择命令键入数据和向系统提供输入。在许多应用系统中,键盘仍然是主要的输入介质,但是鼠标、数字化仪、和语音识别系统正迅速地成为重要的输入手段。数据输入设计原则:a. 尽量减少用户的输入动作。最重要的是减少击键次数。实现方法:用鼠标从预定义的一组输入中选一个;用“滑动标尺”在给定的值域中指定输入值;利用宏定义把一次击键转变成更复杂的输入数据集合;b. 保持信息显示和输入之间的一致性;c. 允许用户自定义输入;d. 交互应该是灵活的,并且可调整成用户最喜欢的输入方式;e. 使在当前动作语境中不使用的命令不起作用。这可使得那些用户不去做那些肯定会导致错误的动作;f. 让用户控制交互流。用户应该能跳过不必要的动作,改变所需做的动作的顺序(在应用环境允许前提下),以及在没有看到程序的情况下从错误状态中恢复正常;g. 对所有输入动作都提供帮助;h. 消除冗余的输入。本系统包括商品信息的录入,顾客基本信息的录入。具体如下:表5-1 商品信息输入表Table 5-1 Commodity information input table输入名称:商品基本信息表输入设备和介质:键盘和鼠标数据项名称类 型长度备 注商品编号varchar220文本框输入商品名称varchar240文本框输入商品类别varchar220文本框输入生产厂家varchar225列表选择输入价格varchar28文本框输入操作日期Datetime8文本框输入数量int4列表选择输入5.2.3 信息显示设计如果人机界面显示的信息是不完整的、含糊的或难于理解的,则应该用系统显然不能满足用户的需求2。可以采用不同方式“显示”信息:用文字、图形和声音:按位置、移动和大小;使用颜色和省略等。设计原则:a. 只显示和当前工作内容有关的内容;b. 不要用数据淹没用户,应该用便于拥护迅速吸取信息的方式来表示数据;c. 产生有意义的出错信息;d. 高效率的使用显示屏幕等。显示方式的确定:显示方式的确定,也就是显示方法的确定,是用什么设备和介质来产生显示,不同的显示方式,所用的介质和设备也不同。最终的显示输出方式常用的只有两种:一种是报表输出,另一种是图形输出。本系统的显示设计如下:表5-2 商品查询结果输出Table 5-2 Commodity inquiries result output输出名称: 商品查询结果输出设备和介质:显示器输出类型: 显示器观看输出时间和步骤::不定期5.2.4登陆设计登陆窗口: 图5-1登陆窗口Fig 5-1 Landing window 功能:可根据权限对信息进行操作。说明:电子商务系统每个用户均可相应的根据自己的权限对本系统进行登陆,管理员登陆和顾客登陆,管理员登陆后有基本资料维护和日常交易管理两部分操作,而顾客登陆有修改密码,查询顾客购买信息操作。5.2.5密码更改设计窗体设计如下:图5-2密码更改窗口Fig 5-2 Modify password window 功能:用于更改密码。说明:电子商务系统每个顾客均可相应的根据自己帐号和密码进行修改密码。5.2.6商品查询设计功能:用于商品查询。说明:可以根据自己的需要来查询商品信息。窗体设计如下:图5-3商品查询窗口Fig 5-3 Commodity inquery window 5.3 各模块内部过程描述5.3.1 系统登录a. 功能:顾客和管理员根据自己的用户名和密码来选择登陆b. 输入项目:号码(管理员帐号或顾客帐号)和密码。c. 输出项目:登录显示的界面。d. 程序流程图:NY开始选择登陆身份输入号码和密码验证是否与库中一致一致?登陆进入用户操作界面登陆结束图5-4用户登陆程序流程图Fig 5-4 User lands the program flow diagram5.3.2 基本资料维护a. 功能:完成基本信息(顾客基本信息、商品基本信息、管理员登陆信息)的查询、添加、修改、删除。b. 输入项目:顾客基本信息、商品基本信息、管理员登陆信息。c. 输出项目:顾客基本信息库、商品基本信息库、管理员登陆信息库。d. 程序流程图:YNNY开始输入商品编号验证库中是否存在将商品基本信息添加入库添加结束添加是否成功?商品数量加1图5-5商品基本信息添加Fig 5-5 Commodity basic information increase5.3.3 查询管理a. 功能:商品名称、类别查询。b. 输入项目:输入查询选择和查询内容。c. 输出项目:查询结果。d. 程序流程图:NYYN开始输入查询选择和查询内容码查询内容是否存在显示查询结果查询结束判断异常错误?图5-6查询流程图Fig 5-6 Inquery flow figure5.4在线购物功能模块 在该模块用户可以看见商城现有的商品;顾客可以查找商品(可分类查询,也可以按关键字查询);用户可以购买商品,也可以查看商品的详细资料,还可以转道其他模块,例如查看购物车查看定单信息等。5.5 “我的购物车功能”功能模块设计 在这个功能模块,用户可以修改购买数量,可以删除已经选购的商品,可以提交购物车,可以清空购物车,可以继续购物,或者查询商品,或者转到其他的功能模块。5.6 定单信息功能模块在该功能模块用户可以看见自己已经提交的所有定单,可以查看定单的详细信息情况。5.6.1 管理界面的设计 为了验证用户是否是管理员,所以需要输入用户名和密码来核对。管理员登陆模块就是为完成这一功能。该模块用到login.java 和一个需要用户输入用户名和密码的的表单。以下是验证管理员的流程图 :开 始输入用户名和密码判断用户名和密码是否正确验证成功 NY登 陆图5-7 管理员验证流程Char.5-7 adm validate flow现有商品管理功能模块设计 在该功能模块可以查看商品的详细系资料,可以修改商品信息,也可以删除商品,填加新商品功能模块设计 在这个功能模块中,管理员可以向系统填加新的商品信息,这个功能的模块比较单一,实现的时候只需要注意写异端javascript,当用户提交表单的时候,对表单数据进行验证。填加新商品分类模块设计在这个功能模块,需要列出现有的所有的商品分类。管理员可以删除现有的商品分类,还可以填加新的商品分类。 在进行删除操作之前会提醒用户是否真的要删除信息,以防错误的操作给用户造成损失。定单管理功能模块设计在这个模块,管理员可以查看下定单用户的详细信息资料,可以查看定单的详细情况,还可以删除定单。用户管理功能模块管理员可以通过这个模块查看用户的详细资料,修改用户资料和删除已经存在的用户资料。6 编码6.1 编码及其目的6.1.1 编码的定义所谓编码就是把软件设计结构翻译成用某种程序设计语言书写的程序8。作为软件工程过程的一个阶段,编码是对设计的进一步具体花,因此,程序的质量主要取决于软件设计的质量2。6.1.2 编码的目的编码的目的是实现人和计算机的通信,指挥计算机按人的意志正确工作。6.2 编码使用的语言6.2.1 编码语言的选择本文选择用JSP,与ASP相比, JSP以Java技术为基础,又在多方面做了改进。具有静态页面与动态页面分离,能够脱离硬件平台的束缚,以及编译后运行等特点,完全克服了ASP脚本级执行的缺点,因而会逐渐成为Internet的主流开发工具3。6.2.2 编码风格特点a. 逻辑简明清晰、易读易懂;b. 标识符应当直观且可以拼读;c. 不编写太复杂的复合表达式;d. 避免使用默认的优先级;e. 禁用go to语句8。6.2.3 编码举例本系统中成员变量的部分代号如下:表6-1程序中成员变量的部分代号Table 6-1 Procedure member variable partial code numbers名称变量名称变量名称变量编号Number性别sex生产厂家Writer姓名Name电话号码telephon价格Prince类别Type日期date帐号ID7 测试7.1 软件测试的任务及目标7.1.1 软件测试的任务测试的目的就是在软件投入生产性运行之前,尽可能多发现软件中的错误。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审2。7.1.2 软件测试的目标a. 测试是为了发现程序中的错误而执行程序的过程;b. 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;c. 成功的测试是发现了到今为止尚未发现的的错误的测试。7.2 测试方法测试有两种方法:黑盒测试和白盒测试。黑盒测试又称为功能测试,如果已经知道了产品应该具有的功能,可以通过测试来检验是否功能正常使用2。白盒测试又叫结构测试,如果知道产品的内部工作的过程,可以通过测试来检验产品内部动作是否按照规格说明书的规定正常运行2。7.2.1 模块测试模块测试的目的是保证每个模块作为一个单元能正常运行,所以模块测试又成为单元测试。在这个测试步骤中所发现的往往是编码和详细设计的错误。在单元测试期间着重 从下述5个方面对模块进行测试8:a. 模块接口;b. 局部数据结构;c. 重要的执行通路;d. 出错处理通路;e. 边界条件。7.2.2 集成测试集成测试是测试和组装软件的系统化技术,包括系统测试和子系统测试。子系统测试是在模块按照设计要求组装起来的同时进行测试,主要目标是发现与接口有关的问题(系统测试与次类似)。集成测试有两种方法:非渐增式测试和渐增式测试。目前,在进行集成测试时普遍采用渐进式测试方法。因为渐进式测试方法具有如下优点:a. 把程序划分成小段来构造和测试,比较容易定位和改正错误;b. 对借口可以进行更彻底的测试;c. 可以使用系统化的测试方法。本系统集成测试采用渐增式测试中的混合法,软件结构测试中采用自顶向下集成与自底向上集成测试的混合方法2。7.2.3 确认测试确认测试也称为验收测试,它的目标是验证软件的有效性。确认测试有两种可能的结果:a. 功能和性能与用户要求一直,软件是可以接受的;b. 功能和性能与用户要求有差距。这个阶段发现的问题往往和需求分析阶段的差距有关,涉及面通常比较广,因此解决起来也比较困难。本系统大部分测试语言都是用简短的jsp代码来表示,输入测试和输出测试如下图:图7-1输入测试和输出测试图Fig 7-1 Input text and output text7.3 程序清单(见附录C)7.4 设计测试方案设计测试方案是测试阶段的关键技术问题。所谓测试方案包括具体的测试目的(例如预定要测试的具体功能),应该输入的测试数据和预期的结果,它的基本目标是确定一组最可能发现某个错误测试数据。本系统中,应用了如下测试方案:基本用到逻辑覆盖;语句覆盖;判断覆盖;条件覆盖等。 7.5 软件维护软件维护是软件生命周期的最后一个阶段,也是持续时间代价最大的一个阶段。所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。软件的维护有适应性维护、完善性维护、改正性维护、预防性维护。本系统采用如下措施:开发过程文档齐全;a. 程序代码简明易懂,注释充分;b. 程序设计禁用GOTO循环语句,减少了测试的复杂性;c. 可重用性良好;d. 尽量松散,低偶合,高内聚;e. 标志位使用flag来标识,增加了易读性。8 用户使用手册8.1 系统使用说明在Windows2000或Windows XP下使用,第一页就显示了管理员登陆和顾客登陆,以及商品浏览等项目,用户可根据自己的身份进入登陆进行查询,修改,删除等操作。8.2 系统特点本系统界面为通用的Windows界面,易于广大用户熟悉和接受,在视窗下操作都适用于本系统,在系统中输入、修改、查询、删除等功能,若是输入不合理有错误提示,输入正确有正确的提示。8.3 系统运行环境8.3.1 软硬件配置a. 服务器配置1) CPU速度:P4 2.0G HZ以上;2) 内存:256MB以上;3) 操作系统:Windows 2000 Server版或Windows XP;4) 数据库软件:MySQL Server 5.1。b. 客户端配置1) CPU速度:P4 1.4G HZ以上;2) 内存:256MB以上;3) 操作系统:Windows XP、 Windows 2000。8.3.2 外部设备a. 集线器、网线若干、10M以上网卡或自适应网卡若干、由局域网大小而定。8.4 软件安装指南a. 服务器必须已经安装MySQL Server 5.1;b. 安装服务器软件Tomcat 6.0。9 结论畅想空间电子商务系统已经基本实现了一般购物网站的基本功能,借鉴淘宝网、易趣网等较流行的购物网站,并结合科大的实际情况,开发出了一个功能相对比较简单网站系统。其主要包括浏览商品功能、添加商品到购物车功能、查看购物车功能、删除购物车中商品功能、清空购物车功能、修改商品数量功能等,当用户确定了购物车中商品种类及数量后,即可在检查完商品信息及用户个人信息之后提交订单,之后等待商城的工作人员送货上门。但由于个人能力与时间的限制,网站的功能并不是十分的完善,首先提供的商品种类不够丰富,且界面简单,但是在本系统中提供立即查询功能,如按类别或名称检索的功能。在毕业设计的整个过程中,从搜集资料、学习网站开发的新技术,到真正的实施开发,以及到论文的编写,我学到了不少非常有用的东西,既能得到了很大的提高,同时也对一整套系统的开发流程从总体上有了深刻的认识和理解,并也知道做出一个项目来从开始的策划到工程的建立直到文档的编写是一项非常不易的工作,这中间需要付出汗水和努力,以及智慧才能够完成。即使是在使用者看来表面上非常简易的一个系统,在开发者的后台编写中也包含了很多非常复杂的代码、配置及操作等。从这次自己建立一个简单的系统开始,已经为日后的工作中开发更加大型的项目奠定了牢固的技术与思想的基础,可以说从这次毕业设计中自己受益匪浅。尤其值得一提的事,在学习网站开发技术的过程中,深刻地感受到当今世界无数先进的技术与自己所学的仅有的一点有限知识的鲜明对比,在IT业中发展,每天面对着新技术的产生,必须抱着不断学习的态度让自己的头脑能跟得上先进技术的发展,才不至于被这个行业所淘汰,如今已面临着即将从学校步入社会,从一个每天的任务知识学习的学生的角色转换为一个可以为社会做出贡献的社会人的角色,但要想在这个行业有所成就,就必须不断的学习、学习再学习,实践、实践再实践。一切程序代码都是靠自己一点一点在键盘上敲出来,只有在这样的过程中才能够真正的将别人的东西转换为自己的东西,才能够在自己做的过程中发现问题,并靠自己的能力解决问题,这样才能够有真正的提高。致谢在毕业设计的整个过程当中,有困难,但也有最终将问题解决了的成功的喜悦。在这样一个忙碌的学期里,自己经历了很多挫折,但也收获了不少经验和道理。在这段时期当中,尤其要感谢我的毕业设计指导老师王伟老师,在我遇到困难的时候给予了我莫大的支持,正是由于这样的支持,才能使我在产生时间冲突的情况下仍能够顺利的学习完开发网站所需的新技术以及按时的完成自己的毕业设计。对于王老师的宽容和理解我在这里表示最衷心的感谢。在后期毕业设计论文的修改当中,王老师对论文中的每个细节都做了详细的检查和辅导,他的这种认真负责的态度、以及在百忙之中仍旧不厌其烦的为每个同学的耐心的讲解都使我对他产生深深的敬佩,王老师的宽容、和善与干练的品质和渊博的知识使接触过他的每位学生都能够受其人格魅力的影响而受益终生。因此,再一次的,我要由衷地感谢王老师无论是在学习上,还是做人上对我长期以来的教育、鼓励和支持。另外,还要感谢在我学习过程中帮助过我的同学和其他的老师,他们在我技术上遇到困难久久不能往下继续的情况下给予了我非常热情的帮助,我在这里对他们表示感谢。最后,对我的母校对我这四年来的养育教导表示我深深的感激之情,我在这里度过了我人生中最要的四年,它教育了我如何做人,如何做事,如何学习,为我今后踏入社会奠定了良好的品质与知识的基础。参考文献1 张孝祥.Java 就业培训教程.第1版.北京:清华大学出版社,2003.2 张海藩.软件工程导论.第3版.北京:北京清华大学出版社,2003.3 耿祥义,张跃平.JSP实用教程.第1版. 北京:北京清华大学出版社,2003.4 王珊,萨师煊.数据库系统概论.第3版. 北京:高等教育出版社,2004.5 李建中,王珊.数据库基本原理. 第2版.北京:电子工业出版社,2001.6 苏治中.DreamWeaverMX2004实用教程. 第2版. 北京:中国铁道出版社,2004.12 孙卫琴 Tomcat与Java.Web开发技术详解8 陈海波,王申康.新编程序设计方法学. 第1版.浙江:浙江大学出版社,2004.9 Bruce Eckel.Thinking in Java. Third Edition. BeiJing:China Machine Press,2005.10 洪维恩.Java 2面向对象程序设计. 第1版.北京:中国铁道出版社,2002.11 Mark Misi. Journal of Systems Management.The Skills Needed by Todays Systems Analysis, May/ June , 1996: 3133.12 Monica J . Garfield , Patrick G Mckeown. Information Systems Management. “Planning for Internet Security” , 1997, 14(1): 224.13 Michael L . Dertouzos. Scientific American .Communications , Computers and Networks, September1991: 7779.附录A 译文JSP基于Web的应用前景在万维网短暂的历史中,它已经从一个大部分显示静态信息的网络演化到对股票进行交易和进行购书操作的一个基础设施。在各种各样的应用程序中,对于可能使用的基于Web的客户端,看上去没有任何限制。基于浏览器客户端的应用程序比传统的客户机/服务器的应用程序有很多好处。这些好处几乎没有限制客户端的访问和机器简化的应用程序部署和管理(要更新一个应用程序,管理人员只需要更改一个基于服务器的程序,而不是成千上万的安装在客户端的应用程序)。这样,软件工业正迅速地想建造机遇浏览器客户端的多层次应用程序迈进。这些快速增长的精巧的基于Web应用程序要求开发技术上的改进。静态HTML对于显示相对静态的内容是不错的选择;新的挑战在于创建交互的基于Web的应用程序,在这些程序中,页面的内容是基于用户的请求或系统的状态,而不是预先定义的文字。很显然,目前所需要的是一个业界范围内的创建动态内容页面的解决方案。这个方案将解决当前方案所受到的限制,即能够在任何Web或应用程序服务器上运行将应用程序逻辑和页面显示分离,能够快速地开发和测试,简化开发基于Web的交互式应用程序的过程。JSP技术就是被设计用来满足这样的要求的。JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商见惯犯合作的结果。SUN公司开发出这个规范来整合平衡已经存在的对Java编程环境进行支持的技术和工具。其结果是产生了一种新的、开发基于Web应用程序的方法,给予使用基于组件应用逻辑的页面设计者的页面设计以强大的功能。JSP简介JSP(JavaServerPages)是由SUNMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页HTML文件中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送email等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无JavaApplet,甚至无Frame。JSP特点JSP技术在多个方面加速了动态Web页面的开发:a. 将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和Beans中,那么其他人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBCTM技术访问数据库,或者包含文件),并且将结果以HTML页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。b. 强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeans TM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。c. 采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,您可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。当与Java2平台,企业版(J2EE)和EnterpriseJavaBean技术整合时,JSP页面将提供企业级的扩展性和性能,这对于在虚拟企业中部署基于Web的应用是必需的。d. 技术分析Microsoft公司的ASP技术也是动态网页开发技术。JSP和ASP从形式上非常相似,ASP程序员一眼就能认出以及。但是深入探究下去会发现它们很多的差别,其中最主要的有以下三点:1)JSP的效率和安全性更高ASP以源码形式存放,以解释方式运行,每次ASP网页调用都需要对源码进行解释,运行效率不高。另外,IIS的漏洞曾使得许多网站源程序大曝光,包括笔者以前用ASP开发的网站,ASP程序全部被人下载了去。JSP在执行以前先被编译成字节码(bytecode),字节码由Java虚拟机(JavaVirtualMachine)解释执行,比源码解释的效率高;服务器上还有字节码的Cache机制,能提高字节码的访问效率。第一次调用JSP网页可能稍慢,因为它被编译成Cache,以后就快得多了。同时,JSP源程序不大可能被下载,特别是JavaBean程序完全可以放到不对外的目录中。2)JSP的组件(Component)方式更方便ASP通过COM来扩充复杂的功能,如文件上传、发送email以及将业务处理或者复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBean实现了同样的功能扩充。在开发方面,COM的开发远比JavaBean复杂和繁琐,学会ASP不难,但学会开发COM可不简单。而JavaBean就简单多了,从本文上述示例中可以看出开发JavaBean很方便。在维护方面,COM必须在服务器上注册,如果修改了COM程序,就必须重新注册,甚至必须关机和重新启动。JavaBean则不需要注册,放在CLASSPATH包含的目录中就行了。如果JavaBean进行了修改,则JSWDK和Tomcat现在还需要关闭和重新运行(但不是关机),但开发者已经许诺将在以后的版本中做到不需要关闭服务器。另外JavaBean是完全的OOP,可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户权限控制、email自动回复等等。3)JSP的适应平台更广ASP目前仅适用于NT和IIS。虽然Unix下有ChiliSoft的插件来支持ASP,但是ASP本身的功能有限,必须通过ASP+COM的组合来扩充,Unix下的COM实现起来非常困难。JSP运行原理当服务器上的一个JSP页面第一次请求执行时,服务器上的JSP引擎首先将JSP页面文件转译成一个Java文件,再将这个Java文件编译生成字节码文件,然后通过执行字节码文件响应客户的请求,而当这个JSP页面再次被请求执行时,JSP引擎将直接将这个字节码文件来响应客户,这也是JSP比ASP运行速度快的一个原因。而JSP页面的首次执行往往由服务器执行者来执行。这个字节码文件的主要工作是:1)把JSP也面中普通的HTML标记符号(也面的静态部分)交给客户的浏览器负责显示。2)执行“”之间的Java程序片(JSP页面中的动态部分),并把执行结果交给客户的浏览器来显示。3)当多个客户请求一个JSP也面时,JSP引擎为每个客户启动一个线程而不是启动一个进程,这些现成由JSP引擎服务器来管理,与传统的CGI为每个用户启动一个进程相比较,其效率要高得多。JSP运行环境介绍自从JSP发布以后,出现了各式各样的JSP引擎。1999年10月SUN公司将Java Server Page 1.1 代码Apache组织,Apache组织对JSP进行了实用研究,并将这个服务器项目称为Tomcat,从此,著名的Web服务器Apache开始支持JSP。这样,Jakarta-Tomcat就诞生了(Jakarta是JSP项目的最初名称)。目前, Tomcat能和大部分主流服务器一起高效率的工作。JSP与Java Servlet的关系Java Servlet是Java 语言的一部分,提供了用于服务器编程的API,Java Servlet编写的Java 程序称为Servlet。Servlet通过HTML与客户交互信息。Servlet的最大特点是不能有效地管理也面的逻辑部分和页面的输出部分,导致Servlet代码非常混乱,用Servlet来管理网站是一件很困难的事情。为了克服Servlet的缺点,SUN公司用Java Servlet作为基础。推出了Java Servlet Page 。JSP提供了Servlet的几乎所有好处,当一个客户请求一个JSP页面时,JSP引擎根据JSP页面生成一个Java 文件,即一个Servlet。用JSP支持 Javabeans 这一特点,可以有效地管理页面的逻辑部分和页面的输出部分。另外JSP也可以和Servlet有效地结合,分离页面的逻辑部分和页面的输出部分。JSP页面的基本结构在传统的HTML页面文件中加入Java程序片和JSP标签就构成了一个JSP页面文件。一个JSP页面可由5中元素组合而成:a. 普通的HTML标记符。b. JSP标签,如指令标签、动作标签。c. 变量和方法的声明。e. Java程序片。f. Java表达式。其中c、e、f形成的部分被称为JSP的脚本部分。当服务器上的一个JSP页面被第一次请求执行时,服务器上的JSP引擎首先将JSP页面文件转译成一个Java文件,再将这个Java文件便宜生成字节码文件,然后通过执行字节码文件响应客户的请求。这个字节码文件的任务就是:1) 把JSP页面中普通的HTML标记符号交给客户的浏览器来执行显示。2) JSP标签、数据库和方法声明、Java程序片由服务器负责执行。将需要显示的结果发送给客户的浏览器。3) Java表达式由服务器负责计算,并将结果转化为字符串,然后叫给客户的浏览器负责显示。JSP中使用数据库在JSP中可以使用Java的JDBC技术,实现对数据库中表记录的查询、修改和删除等操作。JDBC技术在JSP开发占有很重要的地位。JDBC(Java DataBase Connectivity)是Java数据库建立连接API。简单地说,JDBC能完成三件事:a. 与一个数据库建立连接。b. 向数据库发送SQL语句。c. 处理数据库返回的结果。JDBC在设计上和ODBC很相似。JDBC和数据库建立连接的一种常见方式是建立起一个JDBC-ODBC桥接器。由于ODBC驱动程序被广泛地使用,建立这种桥接器后,使得JDBC有能力访问数据库。如果要使用JDBC-ODBC桥接器必须事先设置数据源。JSP中使用Java语言a. Java语言介绍Java是一种简单易用、完全面向对象、有平台无关性、安全可靠的、主要面向Internet 的开发工具。Java自从1995年正式问世以来,它的快速发展已经让整个Web世界发生了翻天覆地的变化。随着Java Servlet的推出,Java在电子上午方面开始暂露头角,最新的Java Server Page(JSP)技术的推出,更是让Java成为基于Web应用程序的首选开发工具。Java是第一套允许使用者将应用程序通过 Internet从远端服务器传输到本地机上并执行的一种语言:是一种应用程序提供者不需要知道使用者的计算机硬件与软件环境的语言。比尔.盖茨曾经说过:“Java是最卓越的程序设计语言”。Java自问世以来,技术和应用发展非常快,在计算机、移动电话、家用电器等领域中无一没有Java技术的存在。在Internet上,几乎每个网页都包含Java程序或代码。由于Java的广泛应用,使它受到了史无前例的关注,Java是一种Internet编程语言,Java还曾是网络动画技术的代名词,Java虚拟机更是让人耳目一新,Java简单易学、跨平台而又不失强大功能。相比其他语言,Java技术平台具有鲜明的优越性。从最初建造Java平台开始,就考虑了安全性的问题,即安全性是建立在Java平台的内核中的。其他的语言只是在开发软件时才由用户自行处理其安全问题,难免会有安全漏洞。其次,对于程序员来说,Java语言比以往其他的任何一门语言都好用,原因在于:Java有自动回收垃圾的功能,Java增加了对象和变量的强制类型检查,Java还取消了指针。目前,Java技术的架构包括以下三个方面:1) J2EE(Java 2 Platform Enterprise Edition)企业版,是以企业为环境而开发应用程序的解决方案。2) J2SE(Java 2 Platform Stand Edition)标准版,是桌面开发和低端商务应用的解决方案。3) J2ME(Java Platform Micro Edition)小型版,是致力于消费产品和嵌入式设备的最佳解决方案。b. Java技术的内涵1) 首先,它是一门编程语言,Java能够创建所有其他传统语言能编写的应用程序,Java能够编写独立的应用程序,运行在装有Java虚拟机的操作系统上。Java在浏览器中执行不许操作系统JVM的支持。2) 其次,Java还是一个开发环境,Java技术包含一系列的工具:编译器、解释器、文档生成工具、打包工具等。另外由Java 2 SDK提供的JRE(Java Runtime Envioument)还包含了一个完整的Java类集合,比如基本语言类、GIU控件类等。3) 最后,Java也是一个运行环境,我们可以从SUN公司提供的Java 2 SDK中来搭建运行环境,而这一切都是免费的。c. Java开发环境SUN公司提供了自己的一套Java开发环境,通常称之为JDK(Java Development Kit).SUN公司提供了 多种操作系统下的JDK,随着时间的推移和技术的进步,JDK的版本也在不断地升级,如JDK 1.2、JDK 1.3、JDK 1.4。各种操作系统下的JDK的各种版本在使用上基本类似,读者可以根据自己的使用环境,从SUN公司的网站上下在相应的版本。要想真正的掌握好JSP技术,必须有较好的Java基础,以及HTML语言方面的知识。JSP技术是在传统的HTML页面文件中加入Java程序片和JSP标签 ,JSP技术基于Java语言,名字区分大小写。JSP中使用的SQL语句a. SQL的介绍SQL语言是1974年由Boyce和Chamberlin提出的。1975年-1979年IBM公司Sun Jose Research Laboratory研制了著名的关系数据库管理系统原型System R并实现了这种语言。由于它功能丰富,语言见解倍受用户及计算机工业界受欢迎,被众多计算机公司和软件恭喜所采用。经各公司的不断修改、扩充和完善,SQL语言最终发展成为关系数据库的标准语言。1986年10月美国国家标准局的数据库委员会X3H2批准了SQL作为关系数据库语言的美国标准。同年公布了SQL标准文本。1987年国际标准化组织也通过了这一标准。此后ANSI不断修改和完善SQL标准,并于1989年公布了SQL-89标准,1992年又公布了SQL-92标准。目前ANSI即将公布正在酝酿新的标准SQL-99,亦称SQL3。自SQL成为国际标准语言以后,各个数据库厂家纷纷推出各自的SQL软件或与SQL接口软件。这就使大多数据库均用SQL作为共同的数据存取语言和标准借口,使不同数据库系统之间的互操作有了共同的基础。这个意义十分重大。因此,有人把确立SQL为关系数据库语言标准及其后的发展称为是一场革命。SQL成为国际标准,对数据库以外的领域也产生了很大影响,有不少软件产品将SQL语言的数据查询功能 与图形功能、软件工程工具、软件开发工具、人工只能程序结合起来。SQL已成为数据库领域中一个主流语。b. SQL概述SQL是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询。SQL是一个通用的、功能极强的关系数据库语言。c. SQL的特点SQL语言之所以能够为用户和业界所接受,并成为国际标准,是因为它是一个综合的、功能极强同时又简捷易学的语言。SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,主要特点包括:1) 综合统一数据库系统主要功能是通过数据库支持的数据语言来实现的。2) 高度非过程化非关系数据模型的数据操纵语言是面向过程的语言,用其完成某项请求,必须指定存取路径。而用SQL语言进行数据操作,只要提出“做什么”,而无须指明“怎么做”,因此无需了解存取路径,存取路径的选择以及SQL语句的操作过程由系统自动完成。这不但大大减轻了用户负担,而且有利于提高数据独立性。3) 面向集合的操作方式非关系数据模型采用的是面向记录的操作方式,操作对象是一条记录。例如插入所有平均成绩在80分以上的学生姓名,用户必须一条一条地把满足条件的学生记录找出来。而SQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且依次插入、删除、更新操作的对象也可以是元组的集合。4) 以同一种语法结构提供两种使用方式SQL语言既是自含式语言,又是嵌入式语言。SQL语句能够嵌入到高级语言程序中,供程序员设计程序时使用。而在良种不同的使用方式下,SQL语言的语法结构基本上是一致的。这种以统一的语法结构提供两种不同的使用方式的做法,提供了极大的灵活性与方便性。5) 语言简捷,易学易用SQL语言接近英语口语,因此容易学习和使用。d. 只有学好SQL语言才能更好的掌握JSP技术。附录B 外文文献Based on Web application prospectIn the World Wide Web short history, it already evolved from a majority of demonstrations static states information network to carries on the transaction to the stock and carries on buys the book operation an infrastructure. In various application procedures, regarding possibly uses based on the Web customer end has a liking for not any limit.Has very many advantage based on the browser customer end application procedure compared to the traditional client/server application procedure. These advantage have not nearly limited the application procedure which the customer end the visit and the machine simplifies to deploy and the management (must renew an application procedure, administrative personnel only to need to change based on server procedure, but is not tens of thousands of installments in customer end application procedure). Thus, the software industry rapidly wants to construct the opportunity browser customer end the multi-level application procedure to make great strides forward.These fast grow exquisitely based on the Web application procedure request development technology in improvement. Static HTML regarding the demonstration relative static state content is the good choice; the new challenge lies in the foundation interactive based on the Web application procedure, in these procedures, the page content is based on users request or the system condition, but is not the writing which defines in advance.What very obviously, at present needs is in a field scope foundation dynamic content page solution? This plan will solve the limit which the current plan will receive, namely will be able transports the about to application procedure logic and the page demonstration separation in any Web or on the application procedure server, will be able fast the development and the test, the simplification development based on the Web interactive application procedure process. The JSP technology is designed uses for to satisfy such request. The JSP standard is the Web server, using the server, the transaction system, as well as the development kit supplier sees the result which the recidivist cooperates. SUN Corporation developed this standard to come the conformity balance already to exist carries on the support to the Java programming environment the technology and the tool. Its result was produces one kind to be new, the development based on the Web application procedure method, gave the use based on the module application logic page designers page design by the formidable function.JSP simple introductionJSP (JavaServer Pages) is Corporation initiates one kind of dynamic homepage technical standard by SUN Microsystems which, many companies participation establishes together. This technology has provided for the foundation demonstration dynamic production content Web page simple and direct and the fast method. The JSP technology design goal is makes the structure to be easier based on the Web application procedure and quickly, but these application procedures can with each kind of Web server, using the server, the browser and the development kit work together. The JSP standard is the Web server, applies the server, the transaction system, as well as between the development kit supplier the broad cooperation result. Joins the Java procedure fragment in the traditional homepage HTML document (Scriptlet) and the JSP mark (tag), constituted the JSP homepage. The Web server when meets visits the JSP homepage the request, first carries out procedure fragment, then will carry out the result to return by the HTML form for the customer. The procedure fragment may operate the database, again the directional homepage as well as transmits email and so on; this is a function which the establishment dynamic website needs. All procedures operation all in the server end execution, in the network transmits the result which only is obtains for the customer end, is lowest to the client browser request, may realize does not have Plugin, does not have ActiveX, non- Java Applet, even does not have FrameJSP characteristicThe JSP technology has accelerated the dynamic Web page development in many aspects:a. carries on the content production and the demonstration the separationUses the JSP technology, the Web page development personnel may use HTML to mark designs and the formatted final page. Uses the JSP marking or originally produces on the page the dynamic content (content is according to requested changes). The production content logic is sealed in marking and in the JavaBeans module, and ties up in the small script, all scripts in server end movement. If the core logic is sealed in marking and Beans, then other people, like the Web administrative personnel and the page designer, can edit and use the JSP page, but does not affect the content the production. In the server end, the JSP engine explained the JSP marking and the small script, produce the content which requested (for example, through visits the JavaBeans module, uses JDBCTM technology visit database, or included file), and transmits the result by the HTML page form the browser. This is helpful to the author protects own code, but also guarantees any based on the HTML Web browser complete usabilityb. emphases may entrust with heavy responsibility moduleThe overwhelming majority JSP page relies on to may entrust with heavy responsibility, the cross platform module (JavaBeans or Enterprise the JavaBeans TM module) carries out a more complex processing which the application procedure requests. The development personnel can share and exchange the execution ordinary operation the module, or causes these modules uses for more users or the customer association. Has accelerated the overall performance history based on the module method, and causes each kind of organization obtains the balance in their existing skill and in the optimized result development endeavor.c. uses the marking simplification page developmentThe Web page development personnel cannot all be the familiar script language programmers. JavaServer the Page technology has sealed many functions: these functions are easy to use, marking to carry on the dynamic content production with JSP in correlation XML to need. The standard JSP marking can visit and the example JavaBeans module, the establishment or the retrieval module attribute, downloads Applet, as well as the execution difficulty with codes and consumes when the function with the alternative means.Has custom-made the marking storehouse through the development, the JSP technology is may expand. From now on, the third party development personnel and other personnel will be allowed to found own for the commonly used function marking storehouse. This enables the Web page development personnel to be able to use the familiar tool and to be similar to marking same to carry out the specific function component to work.The JSP technology very easy conformity to the many kinds of applications system structure in, to use the extant tool and the skill, and expands to can support the enterprise level the distributional application. As uses the Java technology family a part, as well as Java 2 (enterprise version system structure) a constituent, the JSP technology can support highly complex based on the Web application.Because JSP page in sets at the script language is based on the Java programming language, moreover all JSP page is all translated into Java Servlet, the JSP page has the Java technology all advantage, including vigorous and healthy memory management and security. As a Java platform part, JSP has the Java programming language a compilation, each place movement characteristic. Increases along with more and more many suppliers the JSP support to in theirs product, you may use the server and the tool which oneself chooses, changes the tool or the server certainly does not affect the current application. When with Java 2 platforms, enterprise version (J2EE) and Enterprise JavaBeans technology conformity, the JSP page will provide the enterprise the level the extension and the performance, this regarding middle the hypothesized enterprise bureau based on the Web application will be essential.d. technical analysesMicrosoft Corporations ASP technology also is the dynamic homepage development technology. JSP and ASP extremely are formally similar, ASP programmer can recognize and as well as. But thoroughly inquired into can discover them very many differences, most main have following three points:a. JSP efficiency and the security are higherASP by source code form depositing, explained the way movement, each time the ASP homepage transfers all needs to carry on the explanation to the source code, the operating efficiency is not high. Moreover, the IIS loophole once caused many websites source programs big exposure, including author before developed the website with ASP, the ASP procedure has been completely downloaded by the person. JSP in execution before first is translated the byte code (byte code), the byte code hypothesized machine (Java Virtual Machine) explains the execution by Java, is higher than the source code explanation efficiency; On the server also has the byte code the Cache mechanism, can enhance the byte code the visit efficiency. First time transfers the JSP homepage slightly to be possibly slow, because it is translated Cache, later will be quicker much. At the same time, the JSP source program is not greatly possibly downloaded; especially the JavaBeans procedure definitely may put to not the foreign table of contents in.b. JSP component (Component) the way is more convenientASP expands the complex function through COM, like in the document passes on, transmits email as well as separates the handling of traffic or the complex computation into is independent may the reuse module. JSP has realized the similar function expansion through JavaBeans. In the development aspect, the COM development far complex and is more tedious than JavaBeans, learns ASP not to be difficult, but the academic society develops COM to be possible not to be simple. But JavaBeans simple many, may see from this article above demonstration develops JavaBeans to be very convenient. In the maintenance aspect, COM must register on the server, if revised the COM procedure, must reregister, even must Guan Ji and restarts. JavaBeans did not need to register, puts is good in the table of contents which CLASSPATH contained. If JavaBeans has carried on the revision, then JSWDK and Tomcat now also need to close and removes (but will not be closing machine), but the development already will promise achieves in the later edition does not need to close the server. Moreover JavaBeans is complete OOP, may aim at the different handling of traffic function conveniently to establish an entire set to be possible the reuse object storehouse, for example user jurisdiction control, email automatic reply and so on.c. JSP adoption platform is broaderASP at present only is suitable for NT and IIS. Although under Unix has ChiliSoft the plug-in unit to support ASP, but ASP itself function limited, must expand through the ASP+COM combination, under Unix COM realizes is extremely difficult.JSP movement principleWhen on a server JSP page first request execution, on the server JSP engine first translates the JSP page document a Java document, again this Java document translation production byte code document, then through execution byte code document response customer request, but when this JSP page was requested once more when execution, the JSP engine directly will respond this byte code document the customer, this also will be JSP a ASP running rate is quicker than reason. But the JSP page first time execution often carries out by the server performer. This byte code document main work is:a. The ordinary HTML mark (also surface static state are also partial) the JSP surface in gives the customer the browser to be responsible to demonstrate.b. Executions Java procedure piece between (In JSP page tendency are partial), and carries out the result to give the customer the browser to demonstrate.c. When many customers requested when JSP also surface, the JSP engine starts a line regulation for each customer but starts an advancement, these ready-made manages by the JSP engine server, is each user starts an advancement with traditional CGI to compare, its efficiency must be much higher.JSP movement environment introductionSince JSP issue, appeared all kinds of JSP engine. In, 1999 SUN Corporation Java Server Page 1.1 codes Apache organization, the Apache organization has October carried on to JSP the practical research, and is called this server project Tomcat, from this time on, famous Web server Apache starts to support JSP. Thus, Jakarta-Tomcat was born (Jakarta is JSP project initial name). At present, Tomcat can with the majority of mainstreams server together high efficiency work.JSP and Java Servlet relationsJava Servlet is a Java language part, provided has used in API which the server programmed; Java Servlet the compilation Java procedure is called Servlet. Servlet passes HTML and the customer interactive information. The Servlet most major characteristic is cannot effectively manage also the surface logical gate and the page output unit, causes the Servlet code to be extremely chaotic, manages the website with Servlet is a very difficult matter. In order to overcome Servlet the shortcoming, SUN Corporation uses Java the Servlet underlie. JSP has provided Servlet nearly all advantage, when a customer requested when a JSP page, the JSP engine produces a Java document according to the JSP page, namely Servlet. Supports JavaBeans this characteristic with JSP, may effectively manage the page the logical gate and the page output unit. Moreover JSP also may effectively unify with Servlet, separates the page the logical gate and the page output unit.JSP page basic structureThe Java procedure piece and the JSP label in the traditional HTML page document constituted a JSP page document. A JSP page may by 5 center elements combinations become: a. ordinary HTML mark symbol. b. jsp label, like instruction label, movement label. c. variables and method statements. d. Java procedure piece.e. Java expression. 3, 4, 5 forms the part is called JSP the script to be partial.When on a server JSP page by first request execution, on the server JSP engine first translates the JSP page document a Java document, again this Java document cheap production byte code document, then through execution byte code document response customer request. This byte code document duty is:1) the ordinary HTML mark mark gives the customer the JSP page in the browser to carry out the demonstration.2) the jsp label, the database and the method stated, the Java procedure piece is responsible by the server to carry out. Need to demonstrate result transmission for customer browser. 3) The Java expression is responsible by the server to calculate, and finally will transform as the character string, then will call for the customer browser to be responsible to demonstrate.In JSP uses the databaseMay use Java in JSP the JDBC technology, realizes to the database in table operation and so on recording inquiry, revision and deletion. The JDBC technology holds the very important status in the JSP development.JDBC (Java DataBase Connectivity) is the Java database creation connects API. Puts briefly, JDBC can complete three matters:a. and a database creation connection. b. approaches the database to transmit the SQL sentence. c. processing databases return result.JDBC is very similar in the design and ODBC. JDBC and the database creation connection one common way is establishes a JDBC-ODBC bridge joint. Because the ODBC driver widely is used after establishes this kind of bridge joint, enables JDBC to have the ability to visit the database.If must use the JDBC-ODBC bridge joint to have beforehand to establish the data pool.In JSP uses the Java language a. Java language introduction Java is one kind of simple Yi Yong, completely object-oriented, has platform irrelevant safely, is reliable, and mainly faces Internet the development kit. Java officially has been published since 1995; its fast development already lets the entire Web world have the earth-shaking change. Along with Java Servlet promoting, Java morning the aspect starts in the electron temporarily to reveal the horns, newest Java Server Page (JSP) technical promoting, is enables Java to become based on the Web application procedure first choice development kit. Java will be the first set allows the user the application procedure to transmit through Internet from the far-end server to local machine on and the execution one language: Is one kind of application procedure tendered does not need to know users computer hardware and the software environment language. Bill Gates has said: Java is the most remarkable programming language.Java since has been published, the technology and the application development is extremely quick, in domain and so on computer, mobile phone, domestic electric appliances does not have as soon as does not have the Java technology the existence. On Internet, nearly each homepage all contains the Java procedure or the code. As a result of the Java widespread application, caused it to receive the unprecedented attention, Java is one kind of Internet programming language, Java also once was the network animation technology pronoun, Java hypothesized machine is lets the person informer one be new, Java simple Yi Xue, the cross platform but also did not lose the formidable function.Compares other languages, the Java technology platform has the bright superiority. From constructs the Java platform to start at first, had considered the secure question, namely the security is the establishment in the Java platform essence. Other languages only are when develops software only then by the user voluntarily process its security problem, unavoidably can have the security loophole. Next, said regarding the programmer that, the Java language all was easier to use than formerly other any language, the reason lay in: Java had automatic recovery trash the function, Java increased the object and the variable forces the type inspection, Java also to cancel the indicator.At present, Java technology overhead construction including following three aspects:1) J2EE (Java 2 Platform Enterprise Edition) the enterprise version, is develops the application procedure take the enterprise as the environment the solution.2) J2SE (Java 2 Platform Stand Edition) the standard version is the tabletop development and the low end commerce application solution. 3) J2ME (Java Platform Micro Edition) the small version, is devotes to the expense product and inserts the type equipment the best solution.b. Java technology connotation1) First, it is a programming language, Java can found possesses the application procedure which other traditional languages can compile, Java can compile the independent application procedure, moves in is loaded with on the Java hypothesized machine operating system. Java in the browser the execution does not have the operating system JVM support.2) Next, Java or a development environment, the Java technology contains a series of tools: The compiler, the interpreter, the documents production tool, packs the tool and so on. Moreover JRE which provides by Java 2 SDK (Java Runtime Envioument) has also contained a complete Java kind of set, for instance the basic language class, GIU control a kind and so on.3) Finally, Java also is a movement environment, we may in Java 2 SDK which provides from SUN Corporation build the movement environment, but all these are free.c. Java development environmentSUN Corporation has provided an own set of Java development environment, usually calls it JDK (Java Development Kit) SUN Corporation has provided under many kinds of operating system JDK, along with time passing with the technical progress, the JDK edition also in unceasingly promotes, like JDK 1.2, JDK 1.3, JDK 1.4. Under each kind of operating system JDK each kind of edition is basic similar in the use, the reader may act according to own use environment, from about SUN Corporations website in corresponding edition.Must think true grasps the JSP technology, must have the better Java foundation, as well as HTML language aspect knowledge. The JSP technology is joins the Java procedure piece and the JSP label in the traditional HTML page document, the JSP technology based on the Java language, the name differentiates the big small letterIn JSP uses SQL sentencea. SQL introductionThe SQL language was in 1974 proposes by Boyce and Chamberlin. In 1975 -1979 year IBM Corporation Sun Jose Research Laboratory has developed famous relational database management system prototype System R and has realized this language. Because its function is rich, the language opinion doubles the user and calculates the mechanic field to receive welcome, congratulates by the multitudinous computer company and software uses. After various mpanies unceasing revision, expansion and consummation, SQL language ultimate development into relational database standard language.In October, 1986 National Bureau of Standardss database committee X3H2 authorized SQL to take the relational database language the American standard. In the same year announced the SQL standard text. In 1987 the International Standardization Organization also passed this standard. Hereafter ANSI unceasingly revises and consummates the SQL standard, and announced the SQL-89 standard in 1989, in 1992 also announced the SQL-92 standard. At present ANSI soon announces is fermenting new standard SQL-99, also calls SQL3.Becomes after the international standard language from SQL, each database factory promotes respective SQL software in abundance or and SQL connection software. This causes mostly the database to use SQL to take the common data access language and the standard excuse, enable between the different database system the mutually operation to have the common foundation. This significance is extremely significant. Therefore, some people establish SQL are the relational database language standard and its the latter development are called are a revolution.SQL becomes the international standard, has also had the very tremendous influence to outside the database domain, has many software product the SQL language data inquiry function and the graph function, the software engineering tool, the software development kit, is artificial only can the procedure unify. SQL has become in the database domain a mainstream language.b. SQL outlineSQL is one kind is situated between between the relational algebra and the relational calculation structure inquiry language, its function certainly not merely is inquires. SQL is general, the function greatly strengthened relational database language.c. SQL characteristicThe SQL language therefore can accepts for the user and the field, and becomes the international standard, is because it is comprehensive, the function greatly strengthened at the same time simple and direct Yi Xue language. The SQL language collection data inquiry, the data operation, the data definition and the data management function to a body, the main characteristic includes:1) Synthesizes the unification database system main function is realizes through the database support data language. 2) Highly the non- process non- relations data model data operation language is faces the process the language, completes some request with it, must assign the access path. But carries on the data manipulation with the SQL language, so long as proposed makes any, but doesnt need to indicate how does, therefore does not need to understand the access path, the access path choice as well as the SQL sentence wrong make the process automatically to complete by the system. This not only greatly lightened the user burden, moreover is advantageous to enhancing the data independence. 3) Face the operating mode non- relations data model which gathers uses is faces the recording the operating mode, the operation object is a record. For example clevis pin anger all average result in 80 minute above student name
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于JSP电子商务系统?(论文)
链接地址:https://www.renrendoc.com/paper/149932081.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!