【PHP开源代码栏目提醒】:网学会员为需要PHP开源代码的朋友们搜集整理了网上数码商店设计与实现-毕业设计 - 毕业设计相关资料,希望对各位网友有所帮助!
毕 业 设 计 网上数码商店设计与实现 摘 要 20 世纪 90 年代以来,计算机和网络技术促进了电子商务的产生和广泛应用,对传统商业业态和经营方式提出了挑战,网上商店作为一种新型业态,使大量贸易活动和信息传递在网络上进行。
本
论文通过使用当前流行的动态网页技术 JSP 实现前台的显示逻辑业务和编程语言Java 以及三大
开源框架 Hibernate、Struts 与 Spring 实现后台的控制和 MySQL 数据库操作。
MVC ( -View 设计模式主要是采用 MVC 模式的 Model2, 即 Model 模型) (视图)-Controller(控制器)。
使用该种模式可以使网站具有更好的可扩展性和使功能的增强更容易些。
该网站具有注册帐户,浏览商品,查询商品,在线订购商品和管理员后台管理网站的功能。
关 键 词: 网上商店 JSP 三大
开源框架 MVC 模式 目 录1 前言 ................................................................... 11.1 研究目的及意义 ......................................................... 11.2 主要研究内容........................................................... 22 相关软件和技术介绍 ..................................................... 32.1 JSP ................................................................... 32.1.1 JSP 的简介........................................................... 32.1.2 JSP 的特点........................................................... 32.1.3 JSP 的优势........................................................... 42.1.4 JSP 的执行过程....................................................... 52.2 JavaScript ............................................................ 62.3 Java .................................................................. 72.3.1 Java 的简介.......................................................... 72.3.2 Java 语言的特点...................................................... 72.3.3 Java 的主要特点...................................................... 82.4 Tomcat ................................................................ 92.5 AJAX ................................................................. 112.5.1 AJAX 概述........................................................... 112.5.2 AJAX 的优势......................................................... 112.6 DWR .................................................................. 122.7 Hibernate ............................................................ 122.8 Struts ............................................................... 132.9 Spring ............................................................... 142.10 Myeclipse ........................................................... 153 系统概要设计 .......................................................... 173.1 需求分析 ............................................................. 173.2 可行性分析 ........................................................... 173.2.1
经济可行性 ......................................................... 173.2.2 技术可行性 ......................................................... 193.3 结构分析 ............................................................ 193.3.1 各功能模块和示意图 ................................................. 193.3.2 各模块间的关系 ..................................................... 214.数据库设计 ............................................................. 224.1 数据库结构设计 ....................................................... 224.1.1 数据表设计 ......................................................... 224.1.2 数据表与模块间的关系 ............................................. 244.2 系统主要 E-R 图 ....................................................... 255 系统详细
设计.......................................................... 265.1 各模块详细设计 ....................................................... 265.1.1 用户管理模块 ....................................................... 265.1.2 商品管理模块 ....................................................... 285.1.3 购物车 ............................................................. 305.1.4 订单管理 ........................................................... 315.1.5 评论管理模块 ...................................................... 325.2 关键技术详解 ......................................................... 325.2.1 后台与前台的数据交互 ............................................... 325.2.2 页面与页面之间的数据交互 ........................................... 325.2.3 JSP 页面中控制逻辑与显示逻辑混淆.................................... 336 系统测试.............................................................. 347 总结.................................................................... 357.1
毕业设计总结 ......................................................... 357.2 未来展望 ............................................................. 35致 谢 ............................................. 错误!未定义书签。
参 考 文 献 ........................................................... 37Abstract ................................................................. 38仲恺农业工程学院毕业
论文设计成绩评定表 ................. 错误!未定义书签。
1 前言1.1 研究目的及意义 20 世纪 90 年代以来,
计算机和网络技术促进了电子商务的产生和广泛应用,对传统商业业态和经营方式提出了挑战,网上商店作为一种新型业态,使大量贸易活动和信息传递在网络上进行。
网上商店具有一般实物商店所没有的优点: 1.
网络联接全世界和千家万户,使商品更容易销售。
2.网上开店几乎不要投资,只要有张网页发布信息就行。
3.网上开店是虚拟商店,无需存货、仓库等。
4.免去昂贵的店面租金或投资。
5.货源充足且容易组织。
你可以卖本企业自己的商品;也可以卖他企业他人的商品;可以到市场上去物色商品,甚至你可以卖你周围商店里的商品。
6.转行经营快,你可以随时转行经营别类商品。
7.节约人手和时间,你不需要自己站柜台,也不需要雇请营业员,只需抽空上网看看订单就行。
8.适应性广。
企业、家庭、个人、个体户都可开店,个人工作之余也可开个商店来赚钱。
9.成本低。
不言而喻。
10.收益大。
不言而喻。
一般商场,拥有 4-5 万种商品,较大的批发市场有 8-10 万种商品,这些都只占商品总类的很少的一部分,据说全球拥有 150 多万种商品,有人说,如果加上各种类型的服务商品,商品的种类就更多了,但是,一个商店(场)不可能穷尽所有的商品,于是就形成了各种类型的商店或市场,及其相应的核心商品或者服务的竞争力,所谓商品错位经营也就在于此。
就网上商店而言,从理论上说具有超过实物商店物理存放商品空间限制的可能。
我国网民从 1996 年 10 月的仅 10 万网民,到 2001 年 6 月上升至 2650 万,到 2003年达 3000 万以上,2005 年达到 2 亿。
网民的分布状况及其聚集程度决定网上商店的商圈,网上购物的情况决定网上销售量的大小。
中国的网民较有 20的上网购物,美国的网民有40的上网购物,庞大的消费群体使得网上商店变得更有吸引力。
1 开展网上商店,用户就可以足不出户就可以买到自己喜欢的商品。
每个人只要有一台可以上网的电脑,不须站着,也不须走动,只须轻轻地移动鼠标,一点击就可以买到自己想要的商品。
这在以前都是不可能做到的,而现在就可以完全做到。
1.2 主要研究内容 本
论文所研究的网上数码商店主要是为企业或个人提供数码产品展示的虚拟的地方。
它展示的只是虚拟的商品,不占任何的物理地址空间,因而也不用支付昂贵仓库租金来存放;也不受时间限制。
网上数码商店为消费者提供了当今所有的数码产品的全部信息。
它为一般人提供了浏览商品和
查询商品的功能;而为
注册用户侧还提供了购买商品,发表评论和推荐信息的功能。
由于当今世界的数码商品越来越多,更新也越来越快,加上现代人的生活和工作节奏比较快,没有更多的时间去真实的商店去查看最新的数码商品的信息。
而网上数码商店侧为这些人提供了一个快捷、方便地了解最新数码商品的平台。
网上数码商店对于生产者、销售者和消费者都有利的平台,因而在现实社会中大受欢迎。
更由于本人的能力有限,所以本
论文所研究的网上数码商店目前只能提供浏览商品,查询商品,
登陆系统,注册用户,购物车,管理员管理商品、用户、订单和发布最新信息的功能,更强的功能有待进一步增强。
22 相关
软件和技术介绍2.1 JSP2.1.1 JSP 的简介 JSP(JavaServer Pages)是用 JAVA 语言作为脚本语言的服务器页面,JSP 网页为整个服务器端的 JAVA 库单元提供了一个接口来服务于 HTTP 的请求的程序。
JSP 是由 Sun Microsustems 公司倡导、许多公司参与一起建立的一种动态网页技术标准。
在传统的网页 HTML 文件(.htm.html)中加入程序片段 Scriptlet 和 JSP 标记(tag),就构成了 JSP 网页(.jsp)。
JSP 文件不能有浏览器直接运行,而需由
web 服务器解释执行,Web 服务器在遇到访问 JSP 页面的请求时,首先执行其中的程序片段,然后将执行结果以 HTML 格式返回给客户。
程序片段可以操作数据库、重新定向网页等,这就是建立动态网页所需要的功能。
所有程序操作都在服务器端执行,网络上传送给客户端的是得到的结果,即 HTML(Hypertext Markup Language)文件。
62.1.2 JSP 的特点 JSP 主要具有以下的几点特点: 1.将内容的生成和显示进行分离 使用 JSP 技术,Web 页面开发人员可以使用 HTML 或者 XML 标识来设计和格式化最终页面。
使用 JSP 标识或者小脚本来生成页面上的动态内容。
生成内容的逻辑被封装在标识和 JavaBeans 组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。
如果核心逻辑被封装在标识和 Beans 中,那么其他人,如 Web 管理人员和页面设计者,能够编辑和使用 JSP 页面,而不影响内容的生成。
在服务器端,JSP 引擎解释 JSP 标识和小脚本,生成所请求的内容(例如,通过访问JavaBeans 组件,使用 JDBCTM 技术访问数据库,或者包含文件),并且将结果以
HTML(或者 XML)页面的形式发送回浏览器。
这有助于作者保护自己的
代码,而又保证任何基于HTML 的 Web 浏览器的完全可用性。
2.强调可重用的组件 绝大多数 JSP 页面依赖于可重用的,跨平台的组件(JavaBeans 或者 EnterpriseJavaBeansTM 组件)来执行应用程序所要求的更为复杂的处理。
开发人员能够共享和交换执 行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。
基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发 3努力中得到平衡。
3.采用标识简化页面开发 Web 页面开发人员不会都是熟悉脚本语言的编程人员。
JavaServer Page 技术封装了许多功能,这些功能是在易用的、与 JSP 相关的 XML 标识中进行动态内容生成所需要的。
标准的 JSP 标识能够访问和实例化 JavaBeans 组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。
通过开发定制化标识库,JSP技术是可以扩展的。
今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。
这使得 Web 页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来
工作。
JSP 技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。
作为采用 Java 技术家族的一部分,以及 JavaEE(企业版体系结构)的一个组成部分,JSP 技术能够支持高度复杂的基于 Web 应用。
由于 JSP 页面的内置脚本语言是基于 Java 编程语言的,而且所有的
JSP 页面都被编译成为 Java Servlet,JSp 页面就具有 Java 技术的所有好处,包括健壮的存储管理和安全性。
作为 Java 平台的一部分,JSP 拥有 Java 编程语言的“一次编写,各处运行的”的特点。
随着越来越多的供应商将 JSP 支持添加到他们的产品中,你可以使用自己所选择的服务器和工具,更改工具或服务器并不影响当前的应用。
62.1.3 JSP 的优势 1.与传统的 CGI 方式相比 ☆ 后台实现逻辑是基于 Java Component 的,具有跨平台的特点。
☆ 将应用逻辑与页面表现分离,使得应用逻辑能够最大程度得到复用,从而提高开发效率。
☆ 安全,由于后台是完全基于 Java 支持的,安全性由 Java 的安全机制予以保障。
☆ 由于与 ASP 很近似,不需要太多的编程知识就可以动手编写 JSP。
☆ 内置支持 XML,使用 XML 从而使页面具有更强的表现力和减少编程工作量。
2. JSP vs ASP JSP 跨平台,而且支持 Apache,Netscape,IIS,IBM Http Server 在内的所有主流 而Web Server, ASP 目前只支持 NTIIS。
JSP 提供了更好的安全机制。
这对于 e-business这样的应用来说是至关重要的。
JSP 可以跨操作
系统、Web Server 和应用服务器,而 ASP 4只限于 NTIIS。
JSP 是一个开放的标准,得到了 Oracle,Netscape,IBM amp WebLogic,Inprise 的支持。
3. JSP vs
PHP JSP 是一个业界标准,得到 Sun,IBM,Oracle,BEA,Apache 等的支持,
PHP 只是一个开发组织并不强的 free ware;JSP 中的组件,JavaBean 和 EJB 开发非常容易,而且还可以在 JSP 中使用 Java 所有的类和功能。
而
PHP 只能用 C 写一些功能有限的组件,而且编写较为复杂;利用 JSP 可以支持 EJB,可以支持 Transaction 和 CORBA 标准,而且还可以支持 LDAP,Message 等服务,使得访问 ERP,CICS,MQ 等企业应用非常容易。
而
PHP在这方面先天不足,所以对于复杂的电子商务这样的 Mission-critical 的应用来说,
PHP并不合适。
2.1.4 JSP 的执行过程 1 客户端发出 Request 请求; 2 JSP Container 将 JSP 转译成 Servlet 的源
代码; 3 将产生的 Servlet 的源
代码经过编译后,并加载到内存执行; 4 把结果 Response 响应至客户端。
如图 1 图1 JSP 的执行过程 一般人都会以为 JSP 的执行性能会和 Servlet 相差很多,其实执行性能上的差别只在第一次的执行。
因为 JSP 在执行第一次后,会被编译成 Servlet 的类文件,即为XXX.class,当再重复调用执行时,就直接执行第一次所产生的 Servlet,而不用再重新把JSP 编译成 Servlet。
因此,除了第一次的编译会花较久的时间之外,之后 JSP 和 Servlet 的执行速度就几乎相同了。
在执行 JSP 网页时,通常可分为两个时期:转译时期Translation Time和请求时期 5RequestTime(见图 2)。
转译时期:JSP 网页转译成 Servlet 类。
请求时期:Servlet 类执行后,响应结果至客户端。
补充:转译期间主要做了两件事情:将 JSP 网页转译为 Servlet 源
代码.java,此段称为转译时期Translation time;将 Servlet 源
代码.java编译成 Servlet 类.class,此段称为编译时期Compilation time。
图2 转译时期与请求时期程序图 当 JSP 网页在执行时,JSP Container 会做检查的工作,若发现 JSP 网页有更新修改时,JSP Container 才会再次编译 JSP 成 Servlet;JSP 没有更新时,就直接执行前面所产生的 Servlet。
62.2 JavaScript JavaScript 是一种新的描述语言,此一语言可以被箝入 HTML 的文件之中。
透过JavaScript 可以做到回应使用者的需求事件 如: form 的输入 而不用任何的网路来回传输资料,所以当一位使用者输入一项资料时,它不用经过传给伺服端 server处理,再传回来的过程,而直接可以被客户端 client 的应用程式所处理。
你也可以想像成有一个可执行程式在你的客端上执行一样! 运行用 Javascript 编写的程序需要能支持 Javascript 语言的浏览器。
Netscape 公司 Navigator 3.0以上版本的浏览器都能支持 Javascript
程序,微软公司 InternetExplorer 3.0以上版本的浏览器基本上支持 Javascript。
微软公司还有自己开发的Javascript,称为 JScript。
Javascript 和 Jscript 基本上是相同的,只是在一些细节上有出入。
Javascript 短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。
同时它又是专门为制作 Web 网页而量身定做的一种简单的编程语言。
3 62.3 Java2.3.1 Java 的简介 Java 是由 Sun Microsystems 公司于1995年5月推出的 Java 程序设计语言(以下简称Java 语言)和 Java 平台的总称。
用 Java 实现的 Hot
Java 浏览器(支持 Java applet)显示了 Java 的魅力:跨平台、动态的 Web、Internet 计算。
从此,Java 被广泛接受并推动了 Web 的迅速发展,
常用的浏览器现在均支持 Java applet。
另一方面,Java 技术也不断更新。
Java 平台由 Java 虚拟机(Java Virtual Machine)和 Java 应用编程接口(Application Programming Interface、简称 API)构成。
Java 应用编程接口为 Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个 Java 平台之后,Java 应用程序就可运行。
现在 Java 平台已经嵌入了几乎所有的操作系统。
这样 Java 程序可以只编译一次,就可以在各种系统中运行。
Java 应用编程接口已经从1.1x 版发展到1.2版。
目前常用的 Java 平台基于 Java1.4,最近版本为 Java1.7。
Java 分为三个体系 JavaSEJava2 Platform Standard Edition,JavaEEJava 2PlatformEnterprise Edition,JavaMEJava 2 Platform Micro Edition。
2.3.2 Java 语言的特点 Java 是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
当1995年 SUN 推出 Java 语言之后,全世界的目光都被这个神奇的语言所吸引。
那么Java 到底有何神奇之处呢? Java 语言其实最早诞生于1991年,起初被称为 OAK 语言,是 SUN 公司为一些消费性电子产品而设计的一个通用环境。
他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK 可以说是默默无闻,甚至差点夭折。
但是,网络的出现改变了 OAK 的命运。
在 Java 出现以前,Internet 上的信息内容都是一些乏味死板的 HTML
文档。
这对于那些迷恋于 WEB 浏览的人们来说简直不可容忍。
他们迫切希望能在 WEB 中看到一些交互式的内容,开发人员也极希望能够在 WEB 上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。
对于用户的这种要求,传统的编程语言显得无能为力。
SUN 的工程师敏锐地察觉到了这一点,从1994年起,他们开始将 OAK 7技术应用于 WEB 上, 当 并且开发出了 HotJava 的第一个版本。
SUN 公司1995年正式以 Java这个名字推出的时候,几乎所有的 WEB 开发人员都心生感叹:噢,这正是我想要的!于是 Java 成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。
2.3.3 Java 的主要特点 1、Java 语言是简单的。
Java 语言的语法与 C 语言和 C语言很接近,使得大多数程序员很容易
学习和使用 Java。
另一方面,Java 丢弃了 C 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。
特别地,Java 语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。
2、Java 语言是一个面向对象的。
Jav.