1、摘 要伴随着 Internet 的蓬勃发展,网络购物中心作为电子商务的一种形式正以其高效、低成本的优势,逐步成为新兴的经营模式和理念,人们已经不再满足用途信息的浏览和发布,而是渴望着能够充分享受网络所带来的更加多的便利。网络购物正适应了当今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松地选购自己喜欢的商品。本系统便是尝试用 JSP 在网络上架构一个动态的电子商务网站,它是在 Windows XP 下,以 Oracle 为数据库开发平台,Tomcat 网络信息服务作为应用服务器,采用JSP(Java Server Pages)技术开发的网上购物系统。他分前台部分和后台部分,前台部分由用户使用
2、,主要包括用户注册,购物车管理,订单管理,个人资料管理,留言板管理等功能;后台部分由管理员使用,主要包括商品管理,处理订单,用户信息管理,链接信息管理等功能。建立后的网站系统是一个动态、交互式、具有商品提供、系统管理、用户留言等功能的电子商务网站。【关键字】JSP Oracle Tomcat 网上购物系统Designed in the Online shopping system based on JSPAlong with the vigorous development of the Internet, e-commerce networks as a shopping center is
3、 a form of its highly efficient, low-cost advantages, gradually emerging as a business model and philosophy, there is no longer meet use and dissemination of information browsing, but a desire to bring the full enjoyment network more convenient. Internet shopping is being adapted to the fast pace of
4、 todays society to live, so that customers can enjoy the convenience of fast and easy way to purchase their own like commodities. The system is trying to use JSP in a dynamic network of e-commerce websites structure, which is in Windows XP, SQL Server 2000 for database development in platform, Tomca
5、t application server as a network information services, use JSP (Java Server Pages) technology development online shopping system. Prospects and the background of some of his hours, the prospects of users, including users registered, a shopping cart management, order management, personal information
6、 management, message board management functions; Background in part by managers, including commodity management, processing orders, customer information management, information management, and other functions links. After the establishment of the website is a dynamic, interactive, with commodities,
7、systems management, voice mail, and other functions of the e-commerce website users. Keywords JSP;Oracle;Tomcat;Online shopping system第一章 前言1.1 系统的开发背景及意义1.1.1 系统的开发背景一、需求的产生随着市场经济的逐渐形成,全球化经济已在国内迅速发展起来。以往的销售模式正在受到空前的挑战:人们已经对去固定的场所、购买(出售)固定的物品的交易方式所带来的不便越来越感到不满,交易时间长、效率低。高额的运费、销售场地的凭租费等繁多的额外开支也给商家带来沉
8、重的成本支出。为了适应市场、适应经济前进的步伐,买家和商家都在努力积极地寻找一种能够带来高效率、低成本销售模式。计算机及世界互联网的飞速发展使得这种新的销售模式成为可能。近来网上商城已慢慢被人们所熟悉,网上购物这种生活方式已悄然形成。网上商城使得商家可以把商店开到互联网上来、而买家也可以到互联网上选择购买自己喜欢的东西。网上商城不需要商店的凭租费;新商品可以用最短的时间吸引顾客的眼球,因为它不需要那么长的运输时间。网上商城为商家节省了大笔的运输费用、场地凭租费等额外成本,同时也为买家带来了无穷的方便性。因为它不需要你花上半天活一天的时间去商场在玲郎满目的众多商品中选择你需要的东西。网上商城使得
9、“买东西、不出门” 成为现实。随着计算机技术、通信技术的日益发展,互联网的逐步深入与应用,网上商城越来越多的出现在我们的身边,它直接作为一种先进的交易方式,被越来越多的人所接受。网上购物最大程度地方便了用户,你可以通过 WWW 浏览器实现 WEB 购物。网上购物不仅改变了公司进行运作的模式,使网上商城成为传统商务的补充和发展,也使人们改变了消费的观念和消费习惯。 自从几十年前电子计算机的出现,就为网上购物的发展创造了客观条件。但是它的发展还要借助于网络,所以其快速发展是在因特网的广泛应用上。可以预见,网上购物将成为商业普及、贸易的主流,必将影响着千家万户的生活和消费行为,并日益成为社会商业贸易
10、活动的重要形式廉价的网络资源使得网上商城成本低廉,世界性的互联网络带来无比宽阔的市场,给商家/买家带来的众多利益带来无限需求。二、国内外形势国外网上购物形势:(1)美国市场研究公司 Forrester 预测,美国“企业对企业(BtoB)“销售将从 1997 年的 190 亿美元,迅速窜升到 2000 年的 2510 亿美元,进而升至2004 年的 1.4 亿万美元,每年翻番。同期在 GDP 中所占的比重从 0.2%上升到9.7%。美国投资银行 GoldmanSachs 同样乐观,预测美国电子商务销售将从今年的 1140 亿美元增长到 2004 年的 1.5 亿万美元。据美国 MerrillLy
11、nch 投资银行的研究表明,最受电子商务影响的行业是计算机技术和电子业,2003 年它们在因特网上的交易将达 3950 亿美元,随后依次是公用事业、航运、仓储、石化、汽车等。美国今年 3 月 6 日公布了第一个官方的全国网络销售统计数据,1999年,美国“企业对企业“的交易额达到了 1450 亿美元,大大高于 200 亿美元的“企业对消费者(BtoC ) “的网上交易额。电子商务的迅速崛起,使越来越多的美国公司感到缺了它不行,并产生了一种紧迫感。据调查,约有 60%的公司认为电子商务重要,而 42%的公司甚至说,如果不搞电子商务,公司生存将面临威胁。据报道,美国英特尔公司(Intel)每年有
12、150 亿美元的销售是在线完成的;全球最大的网络设备供应商思科公司(Cisco) 40%的销售收入是靠网络实现的。 (2)欧盟正在为新经济的到来做好准备。欧盟计划拿出更多的钱用于教育,所有的学校要在 2001 年以前上网,所有的教师应在 2002 年之前接受使用因特网的训练,所有的公民在 2005 年之前应具有在这方面接受训练的可能性。 (3)据日本投资机构所罗门集团最新公布的一项调查报告显示,Internet 可以给日本固步自封的传统经济带来变革,从而有可能使日本发展成世界最大的电子商务市场。世界电子工业巨头日本索尼公司今年 2 月 1 日宣布,该公司将从即日起通过 Internet 销售该
13、公司的电子产品。其它公司也闻风而动,一场网络销售的变革有望在日本发生。日本企业对企业间的电子商务的贸易总值两年前只有 9 万亿日元,行家预计,到 2003 年之前这一数值有望扩大到 67 万亿日元。(4)WTO 短期内不会向电子商务征税, 1999 年年底在西雅图举行的世贸组织多边会谈达成一项决议,对 Internet 网上交易将延缓征税。WTO 部长们普遍认为,政府不应该对新生的电子交易干涉过多。美国商务部秘书 William Daley 说,预计这项政策将持续到两年左右。他还说:“这项征税禁令并非永久性的,它只会持续 18 个月到 2 年。“美国在线、微软和 AT&T 等电信业和网络公司在
14、此之前已经向美国贸易官员极力游说不要向 Internet 商贸征税。微软的一位发言人说:“这项决议对于世界经济的发展大有裨益。 ”分析家们预计,电子商务的交易额在未来六年内将达到 2 万亿至 5 万亿美元,其中美国境内的交易额将占到一半以上。国内电子商务形势分析: 一项由信息产业部与赛迪网共同举办的调查显示,截止到 2000 年 3 月底,我国已有消费类电子商务网站 1100 多家,其中购物类网站近 800 家,拍卖类网战有100 家左右,服务类网站中远程教育网站 180 家,远程医疗网站 20 家。1999 年,电子商务销售 5500 万元,有人甚至预言今年将达人民币 3.5 亿元。8848
15、、Eachnet 、Yabuy 等新兴的网络公司开起了网上销售业务。联想、方正、海尔等开始尝试 BtoB 业务。 互联网研究与发展中心(CII,)8 月 8 日在京发布的CII 中国电子商务指数报告显示,2000 年 CII 中国电子商务总指数为 51.91,目前中国电子商务尚处于起步阶段。其中,CII 电子商务安全指数最高,为 58.84;而电子商务效益指数最低,为 37.76;技术与应用发展不平衡:(1)从交易额看,中国电子商务交易金额少,在社会商品零售额中尚未形成规模,不是交易的主流;(2)开展电子商务基础设施仍较差;(3)从交易内容看,交易主要限于书籍、光盘、计算机及相关产品、信息咨询
16、服务等,传统产品少、实物性商品交易比重较低;(4)从付款方式看,主要是货到付款方式,即以网下付款为主;(5)从用户满意度看,对基础设施、交易品种、结算方式、货物佩松、信誉程度等方面,总体评价还是不很满意;(6)从政策环境看,对于我国电信资费、投资融资、安全保障、法律法规等方面的满意程度不是很高。测算结果还显示,电子商务比传统交易方式节省 11.61%的费用和 19.34时间。三、网上购物系统的现状目前在国内 PHP 与 ASP 应用最为广泛。而 JSP 由于是一种较新的技术,国内采用的较少。但在国外,JSP 已经是比较流行的一种技术,尤其是电子商务类的网站,多采用 JSP。采用 PHP 的网站
17、如新浪网(sina) 、中国人(Chinaren)等,但由于 PHP 本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。首先,PHP 缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。而 PHP 则缺乏这种支持。还有上面提到过的一点,PHP 提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP 和 JSP 则没有以上缺陷,ASP 可以通过 Microsoft Windowsd 的COM/DCOM 获得 ActiveX 规模支持,通过
18、 DCOM 和 Transcation Server 获得结构支持;JSP 可以通过 SUN Java 的 Java Class 和 EJB 获得规模支持,通过EJB/CORBA 以及众多厂商的 Application Server 获得结构支持。三者中,JSP 应该是未来发展的趋势。世界上一些大的电子商务解决方案提供商都采用 JSP/Servlet。比较出名的如 IBM 的 Ebusiness,它的核心是采用JSP/Servlet 的 WebSphere;西方另外一个非常著名的电子商务软件提供商,Intershop。它原来的产品 Intershop1 2, 3, 4 占据了主要的电子商务软件
19、份额。它们都是通过 CGI 来提供支持 的。但去年 10 月后它推出了 Enfinity,一个采用 JSP/Servlet 的电子商务 Application Server,而且声言不再开发传统软件。总的来说,ASP,PHP,JSP 三者都有相当数量的支持者,而这三者也各有所长,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的 jsp 技术,一方面 jsp 的安全性和跨平台性比较好,另一方面,我也希望能从开发该系统的过程中,深入学习一下这门编程语言。1.1.2 系统开发的意义Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:利用Inter
20、net的技术和协议,建立各种企业内部网Intranet ,企业外部网Extranet,通过廉价的通讯手段,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。而在实际的生活中,这种方案已经被广泛的运用到了实际的商业活动中了,人们将这种交易模式称为电子商务。 当今比较流行的网上购物系统国外有“淘宝()” ,国内有“当当() ”。它们都是相当优秀的电子商务网站,对其他的网站提供了良好的典范。设计中可以学习参考他们的思想,了解和熟悉整个网站的开发流程及完整的电子商务网站应有的功能和注意事项。 设计和完成一个电子商务网站的,将会牵涉到许多技
21、术上的问题,如:动态网页制作技术的,后台数据库的设计和管理,通过实际的制作个网站,可以避免纸上谈兵,在实践中掌握上述技术的使用。1.2 系统概述系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来,就必须先进行调查研究。在系统调查的基础上,对新系统的功能进行细致的分析,从而才能够开发出完整的系统设计一 、 网 站 的 设 计 目 标本平台利用现在比较广泛的 JSP+Oracle 数据库的架构实现的,此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括:浏览商品、查询商品、订购商品、购物车、用户维护等功能;后台管理是提供给管理员的,其中包
22、括:商品管理、用户管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。二 、 网 站 的 可 行 性 分 析随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上的一股潮流。我们相信要不了太长有时间,顾客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,也是很重要的,经过最初的设计目标和进行的市场调查得出以下四点的可行性分析:(1)经济可行性:该平台设计只是作为本人的毕业设计,又
23、因为本人的设计能力有限,其功能还不能完善,所以没有什么经济效益可谈。(2)技术可行性:JSPServlet 的技术已经较为成熟。(3)运行可行性:该系统需要搭建 JVM 即 JAVA 虚拟机和 Tomcat 环境,在此环境下系统,并且在正确连接数据库后可以正常运行。(4)法律可行性:该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成侵权,在法律上是可行的。通过以上的可行性分析,我将采用 JSPServlet 相结合的技术,运用Access 数据库对网站进行建设。三 、 网 站 的 深 入 调 查经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本平台,为了能够对现行
24、的平台内容进行充分了解,使所要开发的平台更具有实用性和适应性,通过两个月的实习调查和指导老师的耐心介绍,设计出该平台功能如下:1. 能够完成用户基本信息录入的注册和用户基本信息的个人前台与后台管理。2. 能够完成管理员对网站的商品资料(商品添加、商品审查)会员管理(会员审查) 、网站信息管理(新闻添加、修改删除、公告设置) ,以及常规设置(广告添加,友情链接)的功能。3. 能过电子商品的名称,电子商品的分类进行搜索。4. 能够通过查看购物车对所选商品进行确定、挑选,通过定单查询对支付费用进行确定。经过前一阶段的调查与研究分析,我已确定了该平台设计的主要功能,对每个功能模块也作了具体描述,下面就
25、来具体分析该平台的设计特点与具体思想。四 、 网 站 设 计 的 特 点我所设计和开发的网上购物平台是经过很长时间的调查和分析才开始具体实施的,它的主要特点是改变了以往的购物只能过现实的商场才能达到的结果,采用 Web 技术,借助于 Internet 互联网广泛应用技术,达到资源共享,提高以往购物的局限性,缩短人们的时间和提高工作效率,具有较好的交互性,从而实现信息化,规范化,系统化,网络化的平台,使整个购物活动过程简单、方便、易行。五 、 网 站 开 发 的 设 计 思 想网上购物平台主要是对后台管理和前台操作。后台管理是管理员对本网站的维护,通过商品资料(商品添加、商品修改)会员管理(会员
26、审查)网站信息管理(新闻添加、修改删除、公告设置) ,以及常规设置(广告添加,友情链接)等功能达到对网站的管理。前台操作是用户登录到本网站,可以进行用户注册,通过网站的精品推荐或商品搜索功能,找到自己想要买的商品,装入购物车,提交定单进行购买。网上购物平台的特点是客户和电子商品信息量很大,管理员需要整理的信息很多,为让管理员轻松、方便、快捷的管理,该平台采用符合购买电子商品基本的原则,满足广大客户的日益增长的数量,并达到操作过程中的直观、方便、实用、安全等要求。六、系统设计的总体规则无论哪个网站都要有它自己的设计规则。该平台也一样,它的主要设计规则有:简单性:在实现平台的功能的同时,尽量让平台
27、操作简单易懂,这对于一个网站来说是非常重要的。针对性:该平台设计是网上购物系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。实用性:该平台能完成电子商品展示和管理员管理的基本信息,具有良好的实用性。七 、 系 统 的 主 要 架 构 及 开 发 模 式系统的建设关键在于其所使用的架构,而网上购物这种基于 web 的系统,传统的 c/s 架构已经不能满足大量用户的访问和操作, b/s 基于浏览器的架构则是目前网络系统应用的主流,它将大量的数据处理工作交给服务器端来处理,客户端只用通过普通的 IE 浏览器即可访问系统,方便快捷而且利于系统的更新和维护,java 语言在该方面更是得天独厚
28、,j2ee 规范的出现则使系统的开发更加规范,层次更加清楚,更利于对复杂事务的处理,而且在安全性方面也做的更好。基于 mvc 的开发流程则使开发过程更加清晰明了,利于做一些复杂的逻辑实现,从而节省了开发周期和开发成本。八、基于 B/S 的体系结构:在 B/S 体 系 结 构 系 统 中 , 用 户 通 过 浏 览 器 向 分 布 在 网 络 上 的 许 多 服 务 器 发出 请 求 , 服 务 器 对 浏 览 器 的 请 求 进 行 处 理 , 将 用 户 所 需 信 息 返 回 到 浏 览 器 。 B/S结 构 简 化 了 客 户 机 的 工 作 , 客 户 机 上 只 需 配 置 少 量
29、的 客 户 端 软 件 。 服 务 器 将 担负 更 多 的 工 作 , 对 数 据 库 的 访 问 和 应 用 程 序 的 执 行 将 在 服 务 器 上 完 成 。 浏 览 器发 出 请 求 , 而 其 余 如 数 据 请 求 、 加 工 、 结 果 返 回 以 及 动 态 网 页 生 成 等 工 作 全 部由 Web Server 完 成 。 实 际 上 B/S 体 系 结 构 是 把 二 层 C/S 结 构 的 事 务 处 理 逻 辑 模块 从 客 户 机 的 任 务 中 分 离 出 来 , 由 Web 服 务 器 单 独 组 成 一 层 来 负 担 其 任 务 , 这样 客 户 机
30、的 压 力 减 轻 了 , 把 负 荷 分 配 给 了 Web 服 务 器 。 这 种 三 层 体 系 结 构 如 图3.1 所 示 。 Browse 浏览器Web 服务器数据库图 1-1 B/S 三 层 架 构 示 意 图这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来,也把技术维护人员从繁重的维护升级工作中解脱出来。由于客户机把事务处理逻辑部分分给了功能服务器,使客户机一下子“苗条“ 了许多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间
31、相互独立,任何一层的改变不会影响其它层的功能。1.3 系统开发工具及相关技术简介1.3.1 系统开发环境操作系统是 windows 2003、windows xp 或 linux 开发环境是 JDK1.6+TOMCAT+ORACLE。开发工具是 ECLIPSE(MYECLIPSE)1.3.1 JSP 技术简介在传统的网页 HTML 文件(*.htm,*.html)中加入 Java 程序片段(Scriptlet)和 JSP 标记( tag) ,就构成了 JSP 网页(*.jsp) 。JSP 页面看上去象标准的 HTML 和 XML 页面,并附带有 JSP 引擎能够处理和抽取的额外元件。Web 服
32、务器在遇到访问 JSP 网页的请求时,首先执行其中的程序片段,然后将执行结果以 HTML 格式返回给用户。程序片段可以操作数据库、重新定向网页以及发送 E-mail 等,这就是建立动态网站所需要的功能。所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的 Java 语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。JSP 技术在多个方面加速了动态 Web 页面的开发:(1)将内容的生成和显示进行分离使用 JSP 技术, Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面。使用 JSP 标识或者小脚本来
33、生成页面上的动态内容(内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格) 。生成内容的逻辑被封装在标识和 JavaBeans 组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在标识和 Beans 中,那么其他人,如Web 管理人员和页面设计者,能够编辑和使用 JSP 页面,而不影响内容的生成。在服务器端,JSP 引擎解释 JSP 标识和小脚本,生成所请求的内容(例如,通过访问 JavaBeans 组件,使用 JDBCTM 技术访问数据库,或者包含文件) ,并且将结果以 HTML(或者 XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于 HTML 的 Web 浏览器的完全可用性。(2)强调可重用的组件绝大多数 JSP 页面依赖于可重用的,跨平台的组件(JavaBeans 或者Enterprise JavaBeansTM 组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)采用标识简化页面开发Web 页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page 技