基于WEB的网上在线图书商城的设计与实现论文_第1页
基于WEB的网上在线图书商城的设计与实现论文_第2页
基于WEB的网上在线图书商城的设计与实现论文_第3页
基于WEB的网上在线图书商城的设计与实现论文_第4页
基于WEB的网上在线图书商城的设计与实现论文_第5页
免费预览已结束,剩余69页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、职场大变样社区(职场大变样社区():下载毕业设计成品):下载毕业设计成品 全套资料,全部全套资料,全部 5050 元以下元以下 太原理工大学 毕业设计(论文)任务书 毕业设计(论文)题目: 基于 web 的网上在线图书商城的设计与实现 毕业设计(论文)要求及原始数据(资料): 1综述网上在图书商城的现实需求以及发展环境; 2深入了解开发网上在图书商城的相关技术; 3简述网上在图书商城所要实现的功能; 4设计并实现这些功能; 5测试各个功能并实现整个系统测试; 6训练检索文献资料和利用文献资料的能力; 7训练撰写技术文档与学位论文的能力。 毕业设计(论文)主要内容: 1综述网上在图书商城的现实需

2、求以及发展环境; 2了解开发网上在图书商城的相关技术; 3熟悉网上在图书商城的开发环境; 4简述网上在图书商城的工作流程; 5. 深入分析、设计与实现网上在图书商城的功能; 6执行功能测试以及整个系统的测试。 学生应交出的设计文件(论文): 1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文; 2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 主要参考文献(资料): 1 黄华. 框架技术在 web 系统开发中的应用 j. 微机发展,2005(05) 2 湛宁,吕争. spring 框架在 j2ee 中的应用j. 科技信息(科学教研, 2008(04) 3 沈哲,揭金良

3、. 基于 ajax 技术的 j2ee 项目的设计与实现j. 铁路计算机 应用,2008(12) 4 刘传文. ajax 技术在 j2ee 框架中的应用j. 重庆工商大学学报(自然科 学版),2008(04) 5 张惠芬. javascript 的理论分析及其应用j. 衡水学院学报, 2006(01) 6 孙卫琴,李洪成.tomcat 与 jsp web 开发技术详解m电子工业出版社, 2003:1-205. 7 陈志泊.数据库原理及应用教程m.北京:人民邮电出版社,2002. 8 brooks terrence a. web search: how the web has changed in

4、formation retrievalj. information research: an international electronic journal, 2003, 8(3). 9 joo m. b. cavalcanti, david robertson. web site synthesis based on computational logicj. knowledge and information systems, 2003, 5(3). 10 mario latendresse, peter d karp. web-based metabolic network visua

5、lization with a zooming user interfacej. bmc bioinformatics, 2011, 12(1). 11 yuan-fang li, paramjit k. das, david l. dowe. two decades of web application testinga survey of recent advancesj. information systems, 2014, 43. 专业班级学生 要求设计(论文)工作起止日期2015 年 3 月 23 日2015 年 7 月 3 日 指导教师签字日期 2015 年 3 月 23 日 教研

6、室主任审查签字日期 系主任批准签字日期 基于 web 的网上在线图书商城的设计与实现 摘要 随着 internet 的迅速发展,电子商务已经是全球经济重要的组成部分。网上在线 图书商城作为其中的一部分,也得到了迅速的发展。与此同时,在现代人类节奏紧凑 的生活中,去实体店购书成为了一件麻烦的事情,人们就更加向往着去网上购书。 网上在线图书商城可以让人们,只要有一台联通 internet 的电脑,就可以随时随 地轻轻松松地买到自己想要的书,让人们足不出户,而且省时省力,给人们的生活带 来了极大的方便。网上图书商城的经营成本低,用户检索方便,有效地缩短了图书购 买所需的时间,网上购书的发展前景势不可

7、挡。 本系统主要以 jsp 为制作工具,实现了用户注册、登录、验证身份以及书籍的预 览查询、对书籍的购买通过购物车实现等功能。 关键词:在线购书 电子商务 jsp the design and implementation of internet online book shop based on web abstract with the development of science and technology, internet is applied more and more widely in peoples lives. there is a growing desire to p

8、urchase books which peoples possibly want to buy in the shortest time. however, a wide range of books brought a lot of troubles to people in the busy life. so book online has become a matter of people yearn for. the development of this system will make a lot of convenience for people, so that they c

9、an buy books which they liked easily, both convenience and effective. the system effectively reduce the length of the book links the flow of distribution, it can be a large number of readers, books, publishers, distribution worked closely together, improving the flow rate of the book greatly. the sy

10、stem has many advantages such as low operating costs, virtual inventory, the user searches convenient, less geographical restrictions and so on. jsp in the system as the main tool what to achieve the user registration, login, authentication, book preview inquiries, through the shopping cart in order

11、 to achieve the purchase of books. key words: shopping online; e-commerce; jsp 目录 1. 绪 论 .1 1.1 课题背景、目的及意义 .1 1.1.1 课题背景 .1 1.1.2 课题目的和意义 .1 1.2 国内外研究现状 .2 1.2.1 国外的研究现状 .2 1.2.2 国内的研究现状 .2 2. 可行性分析 .3 2.1 经济可行性 .3 2.2 技术可行性 .3 2.3 操作可行性 .3 2.4系统的技术介绍.3 2.4.1 java .3 2.4.2 javaee .6 2.4.3 b/s 结构.6 2

12、.4.4 javascript .7 2.4.5 jquery .8 2.4.6 mysql .8 2.4.7 c3p0 .9 2.4.8 ajax .9 2.4.9 jsp .9 2.5 系统开发平台及运行环境 .10 2.5.1 系统开发平台 .10 2.5.2 运行环境 .11 2.5.3 开发工具 .11 3. 需求分析 .12 4. 在线图书商城详细设计 .14 4.1 数据库分析与设计 .15 4.1.1 概念模型设计 .15 4.1.2 数据库表设计 .17 4.1.3 数据库表创建 .19 4.2 普通用户部分 .23 4.2.1 首页设计 .24 4.2.2用户模块 .27

13、4.2.3图书模块 .30 4.2.4购物车 .32 4.2.5订单模块 .33 4.3 系统管理员后台部分 .36 4.3.1管理员登录 .37 4.3.2分类管理 .38 4.3.3图书管理 .40 4.3.4订单管理 .43 5. 系统测试 .44 5.1 测试的目的与目标 .44 5.2测试方法.44 5.3 测试用例 .45 5.4 测试结论 .46 结 论.47 参考文献.48 致 谢.49 1. 绪 论 1.1 课题背景、目的及意义 1.1.1 课题背景 随着网络信息技术的高速发展,电子商务的不断普及,网上图书销售已经是图书 销售行业发展的必然趋势。尤其在近几年,我国的电子商务更

14、是得到了蓬勃的发展, 人们也更加的依赖网上购物来节省时间去做更多的事情。与此同时,网上书城拥有着 传统书店所不可比拟的特点:第一是利用网络作为交易平台,使交易的时间和空间不 受约束,方便用户;第二是信息传递更加迅速,用户可以第一时间知道新书上架信息, 使用户体验得到了显著的提升;第三是降低了图书销售的成本。网上书店的建立可以 提供巨大的方便,为消费者和用户之间架起一座高速、便捷的网上信息桥梁。网上在 线图书商城的主要功能就是为用户提供一个良好的购书平台,实现在线交易,方便购 书。 1.1.2 课题目的和意义 现代生活节奏快,各行各业竞争日益激烈,人们的时间也就显得更加珍贵,我们 所面临的重大课

15、题就是要在更短的时间内做更多的事,要解决这个课题,就需要我们 提高我们的工作效率以及我们的工作质量。 网络的发展带来了很多的好处,鉴于互联网的优势以及对网内外相关网上书城网 站现状的研究分析,我决定以基于 web 的网上在线图书商城的设计与实现作为我的毕 业设计主题。该商城集浏览、购物和支付等功能为一体,立足于网络平台运营,来推 动电子商务的发展。 网上在线图书商城作为一个虚拟的书店,拥有很多的特性,它不仅可以减少人力、 物力,降低了成本,还可以 24 小时营业,突破了时间和空间的限制,不需要营业员, 使得它变成了一个虚拟的自动售书机。与此同时,在线图书商城在全球市场上更加容 易拓展,也能提高

16、效率,对未来业务的推广以及发展有着一定的实际意义。 1.2 国内外研究现状 1.2.1 国外的研究现状 伴随着网络信息技术的高速发展,电子商务的兴起,以及国际互联网的开通,为 信息化社会的飞速发展创造了有利的条件。与此同时,网上书店成为了信息化社会发 展的必然要求。尤其在欧美以及日本这些信息化程度比较高的国家和地区,网上在线 销售图书的发展更加速度迅猛。根据 internet 上的相关统计,截止昨天为止,互联网 用户已经达到了 17 亿,而目前全球的人口则为 67 亿。在未来的发展中,互联网的用 户会增加的更快。全球 b2b 电子商务交易一直占据主导地位,2002 年至今,呈现持续 高速增长态

17、势,2007 年全球 b2b 交易额达到 8.3 万亿美元,预计在未来几年将保持 40%以 上的增长率,到 2010 年 b2b 交易额将达到 26 万亿美元,比 2002 年增长 30 多倍。网 民队伍的迅速扩充,也为网上售书带来了巨大的市场空间。加上图书因其具有表示清 晰、规格统一、特征容易描述的特点,已经成为发展电子商务的最为理想的商品类型。 因此。各国发展电子商务的首选目标也就成了网上售书,各国电子商务网站的很大一 部分就是网上书店。所以说,在信息化社会的发展中,网上在线图书商城会不断的往 前发展。 1.2.2 国内的研究现状 中国电子商务起步较晚,但集中度高,据调查显示,无论是针对公

18、众个人领域的 c2c、b2c 电子商务,还是针对企业的 b2b 电子商务模式,都已经形成了优势的明显的 领导品牌。在中国,企业电子商务的整体发展水平还是比较低的,东、西部地区差距 较大;国有企业电子商务开展的水平要落后于其他性质的企业。随着 internet 在中国 地区的快速发展,网络技术的良好发展使得在线购书成为现实,各种各样的网上图书 商城慢慢出现,在国内已经涌现了如当当网、卓越网等知名的售书网站。 电子商务发展环境日益改善,正处在转型期的中国,构成电子商务发展环境各个 要素的发展速度也是非常快的,由于网络基础设施不断完善,主要信息技术产品加速 扩散。中国网民的激增,导致了互联网应用的迅

19、速发展,电子商务规模迅速扩大,网 购人群激增,都是影响中国电子商务发展的重要因素。 2. 可行性分析 2.1 经济可行性 本系统是可以运行于现在市场上出现的各种个人电脑,系统成本主要集中在系统 的开发上,随着计算机技术的发展和网络人口的增加,网络世界越来越丰富,网上购 书成为了一种时尚潮流,顾客可以在网上购买任何在现实世界可以获得的图书。网上 在线图书商城所带来的效益远远大于系统软件的开发成本,并且严格按照国家法律法 规来进行研究和实践,并无法律和政策方面的限制,在经济上是完全可行的。 2.2 技术可行性 本系统主要依托于 spring 框架,采用 java、jsp、jquery、mysql

20、和 mybatis 等 技术开发,可以运行于 windows xp 和 window7 等主流操作系统上。使用 mybatis 框架 与后台数据库进行连接,完成数据的查询、删除、修改、添加等功能。由于 spring 的 全面性、灵活性,以及强大的功能性,而且 mysql 灵活易维护,在开发方面具有方便 快捷、使用灵活的特点,以及目前实际应用的广泛,因此使用 spring 和 mysql 作为开 发轻平台的组合,在基于 web 的开发项目中的技术方面是完全可行的。 2.3 操作可行性 该系统可以运行在大多数的计算机中,由于是采用 b/s 架构开发,所以无需安装 任何客户端,只需登录主页,就可以轻

21、松的实现图书的浏览、会员注册登录、购书等 操作。而且界面设计充分考虑人的浏览习惯,网页设计清新、简洁合理,提示信息完 整,不会让用户感觉到疲劳,可操作性强。 2.4 系统的技术介绍 2.4.1 java java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言。java 技术具有 卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人电脑、数据中心、游 戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社 群。 java 由四方面组成: (1)java 编程语言,即语法。 (2)java 文件格式,即各种文件夹、文件的后缀。 (3)java 虚拟机(jvm),即处

22、理*.class 文件的解释器。 (4)java 应用程序接口(java api)。 java 分为三个体系,分别为 java se(j2se,java2 platform standard edition,标准 版) ,javaee(j2ee,java 2 platform, enterprise edition,企业版) ,java me(j2me,java 2 platform micro edition,微型版) 。 java 语言有下面一些特点:简单、面向对象、分布式、解释执行、鲁棒、安全、 体系结构中立、可移植、高性能、多线程以及动态性。 1. 面向对象 java 语言的设计集中于

23、对象及其接口,它提供了简单的类机制以及动态的接口模 型。对象中封装了它的状态变量以及相应的方法,实现了模块化和信息隐藏 ;而类则 提供了一类对象的原型,并且通过继承机制,子类可以使用父类所提供的方法,实现 了代码的复用。 2. 分布性 java 是面向网络的语言。通过它提供的类库可以处理 tcp/ip 协议,用户可以通过 url 地址在网络上很方便地访问其它对象。 3. 简单性 java 语言是一种面向对象的语言,它通过提供最基本的方法来完成指定的任务, 只需理解一些基本的概念,就可以用它编写出适合于各种情况的应用程序。 java 略去 了运算符重载、多重继承等模糊的概念,并且通过实现自动垃圾

24、收集大大简化了程序 设计者的内存管理工作。另外,java 也适合于在小型机上运行,它的基本解释器及类 的支持只有 40kb 左右,加上标准类库和线程的支持也只有 215kb 左右。库和线程的 支持也只有 215kb 左右。 4. 鲁棒性 java 在编译和运行程序时,都要对可能出现的问题进行检查,以消除错误的产生。 它提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误。通 过集成的面向对象的例外处理机制,在编译时,java 提示出可能出现但未被处理的例外, 帮助程序员正确地进行选择以防止系统的崩溃。另外,java 在编译时还可捕获类型声明 中的许多常见错误,防止动态运行时不匹

25、配问题的出现。 5. 可移植性 与平台无关的特性使 java 程序可以方便地被移植到网络上的不同机器。同时, java 的类库中也实现了与不同平台的接口,使这些类库可以移植。另外,java 编译器是 由 java 语言实现的,java 运行时系统由标准 c 实现,这使得 java 系统本身也具有可 移植性。 6. 体系结构中立 java 解释器生成与体系结构无关的字节码指令,只要安装了 java 运行时系统, java 程序就可在任意的处理器上运行。这些字节码指令对应于 java 虚拟机中的表示, java 解释器得到字节码后,对它进行转换,使之能够在不同的平台运行。 7. 安全性 用于网络、

26、分布环境下的 java 必须要防止病毒的入侵。 java 不支持指针,一切对 内存的访问都必须通过对象的实例变量来实现,这样就防止程序员使用特洛伊 木马 等欺骗手段访问对象的私有成员,同时也避免了指针操作中容易产生的错误。 8. 解释执行 java 解释器直接对 java 字节码进行解释执行。字节码本身携带了许多编译时信息, 使得连接过程更加简单。 9. 动态性 java 的设计使它适合于一个不断发展的环境。在类库中可以自由地加入新的方法 和实例变量而不会影响用户程序的执行。并且 java 通过接口来支持多重继承,使之比 严格的类继承具有更灵活的方式和扩展性。 10. 多线程 多线程机制使应用

27、程序能够并行执行,而且同步机制保证了对共享数据的正确操 作。通过使用多线程,程序设计者可以分别用不同的线程完成特定的行为,而不需要 采用全局的事件循环机制,这样就很容易地实现网络上的实时交互行为。 11. 高性能 和其它解释执行的语言如 basic、 tcl 不同,java 字节码的设计使之能很容易地 直接转换成对应于特定 cpu 的机器码,从而得到较高的性能。 2.4.2 javaee java 是一种可以撰写跨平台应用的编程语言,而我们编写的 jsp 代码中,由于大 量的显示代码和业务逻辑混淆在一起,彼此嵌套,不利于程序的维护和扩展。当业务 需求发生变化的时候,对于程序员和美工都是一个很重

28、的负担。为了程序的易维护性 和可扩展性,这就需要我们使用 javaee 技术来进行项目开发。javaee 是一个开发分 布式企业级应用的规范和标准。javaee 应用程序是由组件构成的。j2ee 组件是具有独 立功能的单元,他们通过相关的类和文件组装成 javaee 应用程序,并与其他组件交互。 javaee 技术体系结构可分为:表示层技术、中间层技术、数据层技术。javaee 还涉及 到系统集成的一些技术。 2.4.3 b/s 结构 b/s 结构是随着 internet 技术的兴起,对 c/s 结构的一种变化或者改进的结构, 并且它克服了上述 c/s 结构的缺陷。 b/s 结构中,事务处理的

29、逻辑部分从客户机的任务中分离出来,使客户机不再负 责处理复杂计算和数据访问等关键事务,只负责显示部分,由服务器来担负更多的工 作。用户仅通过浏览器就可以向服务器发出请求,服务器处理客户的请求,并将结果 返回给用户。b/s 相对于 c/s 结构有以下优势: 开发和维护成本 c/s 结构开发和维护成本较高。对不同客户端要开发不同的程序,编程工作量巨 大。如果应用程序要进行安装、修改和升级,均需要在所有的客户机上进行,复杂又 麻烦。对于 b/s 结构,只需在客户端安装通用的浏览器,所有的维护和升级工作都是 在服务器上执行的,不需对客户端进行任何改变,因而大大降低了开发和维护的成本。 客户端负载 c/

30、s 结构的客户端担负着显示与处理数据的任务,负载过重。随着应用系统的功 能越来越复杂,客户端的应用程序也变得越来越庞大,客户端也变得越来越“胖” 。而 不断提高客户机的配置,又加大了投资成本。b/s 结构的客户端把事务处理的逻辑部 分交给了服务器端,不再负责处理复杂计算和数据访问等关键事务,只需要进行显示, 使客户机变得很“瘦” 。 采用标准 c/s 结构所采用的标准只在内部统一,其应用通常是专用的。b/s 结构所采用的标 准是开放的、非专用的,是经过标准化组织所确定的,保证了其应用的通用性和跨平 台性。 灵活性 c/s 结构系统模块中每一部分的变动均要关联到其他模块的变动,是系统很难升 级,

31、灵活性差。b/s 多层结构中,层与 1 层之间相互独立,任何一层的改变不影响其 它层的功能,系统的改进变得相对容易,可以用不同厂家的产品来组成性能更佳的系 统。 移植性 c/s 结构移植困难,不同开发工具开发的应用程序,一般来说互不兼容,难以移 植到其他平台上运行。对于 b/s 结构,在客户端安装的是浏览器,不存在移植后兼容 性问题。 用户界面风格 c/s 结构的用户界面是由客户端所安装的软件决定的,用户界面各不相同。而 b/s 结构只需在客户端安装通用的浏览器就可访问程序,浏览器的界面统一友好,方便使 用。 2.4.4 javascript javascript 一种直译式脚本语言,是一种动

32、态类型、弱类型、基于原型的语言, 内置支持类型。它的解释器被称为 javascript 引擎,为浏览器的一部分,广泛用于客 户端的脚本语言,最早是在 html(标准通用标记语言下的一个应用)网页上使用,用 来给 html 网页增加动态功能。 在 1995 年时,由 netscape 公司的 brendan eich,在网景导航者浏览器上首次设 计实现而成。因为 netscape 与 sun 合作,netscape 管理层希望它外观看起来像 java,因此取名为 javascript。但实际上它的语法风格与 self 及 scheme 较为接近。 为了取得技术优势,微软推出了 jscript,c

33、envi 推出 scriptease,与 javascript 同样可在浏览器上运行。为了统一规格,因为 javascript 兼容于 ecma 标 准,因此也称为 ecmascript。javascript 脚本语言具有以下特点:(1)脚本语言。(2) 基于对象。 (3)简单。 (4)动态性。(5)跨平台性。 2.4.5 jquery jquery 是继 prototype 之后又一个优秀的 javascript 库。它是轻量级的 js 库 ,它兼容 css3,还兼容各种浏览器(ie 6.0+, ff 1.5+, safari 2.0+, opera 9.0+) , jquery2.0 及后

34、续版本将不再支持 ie6/7/8 浏览器。jquery 使用户能更方便地处理 html(标准通用标记语言下的一个应用) 、events、实现动画效果,并且方便地为网站 提供 ajax 交互。jquery 还有一个比较大的优势是,它的文档说明很全,而且各种应 用也说得很详细,同时还有许多成熟的插件可供选择。jquery 能够使用户的 html 页 面保持代码和 html 内容分离,也就是说,不用再在 html 里面插入一堆 js 来调用命令 了,只需要定义 id 即可。 jquery 是一个兼容多浏览器的 javascript 库,核心理念是 write less,do more(写得更少,做得

35、更多)。jquery 在 2006 年 1 月由美国人 john resig 在纽约的 barcamp 发布,吸引了来自世界各地的众多 javascript 高手加入,由 dave methvin 率领团队进行开发。如今,jquery 已经成为最流行的 javascript 库,在世界前 10000 个访问最多的网站中,有超过 55%在使用 jquery。 jquery 是免费、开源的,使用 mit 许可协议。jquery 的语法设计可以使开发者更 加便捷,例如操作文档对象、选择 dom 元素、制作动画效果、事件处理、使用 ajax 以 及其他功能。除此以外,jquery 提供 api 让开发

36、者编写插件。其模块化的使用方式使 开发者可以很轻松的开发出功能强大的静态或动态网页。 jquery,顾名思议,也就是 javascript 和查询(query) ,即是辅助 javascript 开发的库。 2.4.6 mysql mysql 是一个关系型数据库管理系统,由瑞典 mysql ab 公司开发,目前属于 oracle 公司。mysql 是最流行的关系型数据库管理系统,在 web 应用方面 mysql 是最 好的 rdbms(relational database management system:关系数据库管理系统)应用软 件之一。mysql 是一种关联数据库管理系统,关联数据库

37、将数据保存在不同的表中, 而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。mysql 所 使用的 sql 语言是用于访问数据库的最常用标准化语言。mysql 软件采用了双授权政 策(本词条“授权政策” ) ,它分为社区版和商业版,由于其体积小、速度快、总体拥 有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 mysql 作为网站 数据库。由于其社区版的性能卓越,搭配 php 和 apache 可组成良好的开发环境。 2.4.7 c3p0 c3p0 是一个开源的 jdbc 连接池,它实现了数据源和 jndi 绑定,支持 jdbc3 规范 和 jdbc2 的标准扩展。

38、目前使用它的开源项目有 hibernate,spring 等。 2.4.8 ajax ajax 即“asynchronous javascript and xml” (异步 javascript 和 xml) ,是指 一种创建交互式网页应用的网页开发技术。ajax 等于异步的 javascript 和 xml(标准 通用标记语言的子集) 。ajax 是一种用于创建快速动态网页的技术。通过在后台与服 务器进行少量数据交换,ajax 可以使网页实现异步更新。这意味着可以在不重新加载 整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 ajax)如果需要 更新内容,必须重载整个网页页面。

39、2.4.9 jsp jsp 全名为 java server pages,中文名叫 java 服务器页面,其根本是一个简化 的 servlet 设计,它1 是由 sun microsystems 公司倡导、许多公司参与一起建立的 一种动态网页技术标准。jsp 技术有点类似 asp 技术,它是在传统的网页 html(标准 通用标记语言的子集)文件(*.htm,*.html)中插入 java 程序段(scriptlet)和 jsp 标 记(tag),从而形成 jsp 文件,后缀名为(*.jsp)。 用 jsp 开发的 web 应用是跨平台的, 既能在 linux 下运行,也能在其他操作系统上运行。

40、它实现了 html 语法中的 java 扩张(以 形式) 。jsp 与 servlet 一样,是 在服务器端执行的。通常返回给客户端的就是一个 html 文本,因此客户端只要有浏览 器就能浏览。 jsp 技术使用 java 编程语言编写类 xml 的 tags 和 scriptlets,来封装产生动态 网页的处理逻辑。网页还能通过 tags 和 scriptlets 访问存在于服务端的资源的应用 逻辑。jsp 将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基 于 web 的应用程序的开发变得迅速和容易。 jsp(javaserver pages)是一种动态页面 技术,它的主要目

41、的是将表示逻辑从 servlet 中分离出来。 java servlet 是 jsp 的技术基础,而且大型的 web 应用程序的开发需要 java servlet 和 jsp 配合才能完成。jsp 具备了 java 技术的简单易用,完全的面向对象, 具有平台无关性且安全可靠,主要面向因特网的所有特点。 2.5 系统开发平台及运行环境 2.5.1 系统开发平台 系统的开发是在 tomcat 环境下进行的。 tomcat 是 apache 软件基金会(apache software foundation)的 jakarta 项目 中的一个核心项目,由 apache、sun 和其他一些公司及个人共同

42、开发而成。由于有了 sun 的参与和支持,最新的 servlet 和 jsp 规范总是能在 tomcat 中得到体现, tomcat 5 支持最新的 servlet 2.4 和 jsp 2.0 规范。因为 tomcat 技术先进、性能稳 定,而且免费,因而深受 java 爱好者的喜爱并得到了部分软件开发商的认可,成为 目前比较流行的 web 应用服务器。目前最新版本是 8.0。 tomcat 服务器是一个免费的开放源代码的 web 应用服务器,属于轻量级应用服 务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 jsp 程序的首选。对于一个初学者来说,可以这样认为,当在一

43、台机器上配置好 apache 服务器,可利用它响应 html(标准通用标记语言下的一个应用)页面的访问 请求。实际上 tomcat 部分是 apache 服务器的扩展,但它是独立运行的,所以当你运 行 tomcat 时,它实际上作为一个与 apache 独立的进程单独运行的。 诀窍是,当配置正确时,apache 为 html 页面服务,而 tomcat 实际上运行 jsp 页面和 servlet。另外,tomcat 和 iis 等 web 服务器一样,具有处理 html 页面的功能, 另外它还是一个 servlet 和 jsp 容器,独立的 servlet 容器是 tomcat 的默认模式。不

44、 过,tomcat 处理静态 html 的能力不如 apache 服务器。目前 tomcat 最新版本为 8.0。 2.5.2 运行环境 操作系统:windows xp 以上版本。 服务器软件:tomcat6.0 以上版本。 浏览器:ie、fire fox、google chrome。 2.5.3 开发工具 开发工具:eclipse eclipse 是著名的跨平台开源集成开发环境(ide) 。最初主要用来 java 语言开发, 目前亦有人通过插件使其作为 c+、python、php 等其他语言的开发工具。 eclipse 的本身只是一个框架平台,但是众多插件的支持,使得 eclipse 拥有較

45、 佳的灵活性,所以许多软件开发商以 eclipse 为框架开发自己的 ide。 虽然大多数用户很乐于将 eclipse 当作 java 集成开发环境(ide)来使用,但 eclipse 的目标却不仅限于此。eclipse 还包括插件开发环境(plug-in development environment,pde) ,这个组件主要针对希望扩展 eclipse 的软件开发人员,因为它 允许他们构建与 eclipse 环境无缝集成的工具。由于 eclipse 中的每样东西都是插 件,对于给 eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所 有工具开发人员都具有同等的发挥场所。

46、1 这种平等和一致性并不仅限于 java 开发工具。尽管 eclipse 是使用 java 语言 开发的,但它的用途并不限于 java 语言;例如,支持诸如 c/c+、cobol、php、android 等编程语言的插件已经可用,或预计将会推出。 eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管 理系统。 基于 eclipse 的应用程序的一个突出例子是 ibm rational software architect,它构成了 ibm java 开发工具系列的基础。 eclipse 是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供 一个全功能的、

47、具有商业品质的工业平台。它主要由 eclipse 项目、eclipse 工具项 目和 eclipse 技术项目三个项目组成,具体包括四个部分组成eclipse platform、jdt、cdt 和 pde。jdt 支持 java 开发、cdt 支持 c 开发、pde 用来支持插 件开发,eclipse platform 则是一个开放的可扩展 ide,提供了一个通用的开发平台。 它提供建造块和构造并运行集成软件开发工具的基础。eclipse platform 允许工具建 造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而 另一个工具功能在哪里开始。 3. 需求分析 该网上

48、在线图书商城模型是典型的网上购物实践中最为普遍的电子商务企业对客 户(b2c)模式,主要包括会员注册、订单管理、购物车、搜索、支付等基本功能。此 外,本系统也将实现在线图书销售系统的后端管理,包括图书的添加、订单的处理等 功能。本系统完全基于 jsp 技术,在系统的设计与开发过程中严格遵守软件工程的规 范,运用软件设计模式,从而减少系统模块间的偶合,力求做到系统的稳定性、可重 用性和可扩充性。 主要的需求如下: (1)普通用户部分: 用户管理:当用户未登录到系统中,即可对商城中的商品进行在 线浏览,对于未注册用户,系统应该提供注册功能。对于已经进行注册过 的用户,用户可以进行登录、激活、退出、

49、修改密码等操作; 分类显示:对于所有的普通用户来说,都可以进行对商城内的书 籍浏览,而图书需要进行分类显示,以方便用户的浏览与查询,对于本系 统,分类显示主要分两级显示,一级分类以及二级分类; 图书显示:对于具体图书的显示,对于用户,可以按分类查询图 书、通过关键字搜索图书、高级搜索图书、查看某本图书的详细等; 购物车管理:对于普通用户,可以在浏览图书的过程中向购物车 中添加图书,也可以修改购物车中图书数量、删除购物车中图书以及查看 我的购物车等; 订单管理:讲图书添加到购物车后,可以通过购物车对自己需要 购买的图书生成订单,也可以查看我的订单、查看某个订单的详细、订单 支付、确认收货以及取消

50、未付款订单。 (2)后台管理员部分: 管理员:该图书商城需要拥有后台管理员,以便对系统以及用户 数据的管理,需要实现管理员的登录功能; 分类管理:系统管理员拥有分类管理的功能,可以查看所有分类、 添加 1 级分类、添加 2 级分类、修改 1 级分类、修改 2 级分类、删除 1 级 分类、删除 2 级分类等; 图书管理:管理员拥有管理图书资源的最高权限,可以按分类搜 索图书、高级搜索图书、添加新图书、查看图书详细信息、编辑图书、删 除图书等; 订单管理:当用户提交订单以后,管理员可以按状态搜索订单、 查看订单详细信息,当用户付款之后,管理员有权限进行取消订单、发货 等操作; 4. 在线图书商城详

51、细设计 根据在线图书商城的需求,我们将整个系统分为两个部分,主要分为普通用户部 分,以及系统管理员后台部分。 4.1 数据库分析与设计 信息系统的主要任务是通过大量数据获得管理所需要的信息,这就要求系统本身 能够存储和管理大量的数据,而这一功能的实现必须借助大型数据库系统。本系统的 开发选择 mysql 作为后台数据库开发工具。 4.1.1 概念模型设计 概念模型用于信息世界的建模,与具体的 dbms 无关。为了把现实世界中的具体事 物抽象、组织为某一 dbms 支持的数据模型。人们常常首先将现实世界抽象为信息世界, 然后再将信息世界转换为机器世界。也就是说,首先把现实世界中的客观对象抽象为

52、某一种信息结构,这种信息结构并不依赖于具体的计算机系统和具体的 dbms,而是概 念级的模型,然后再把模型转换为计算机上某一个 dbms 支持的数据模型。实际上,概 念模型是现实世界到机器世界的一个中间层次。 信息世界中包含的基本概念有实体和联系。 (1) 实体 (entity) 客观存在并可相互区别的事物称为实体。实体可以是具体的人、事、物,也可以 是抽象的概念或联系。例如,一个学生、一门课、一个供应商、一个部门、一本书、 一位读者等都是实体。 (2) 联系 (relationship) 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映 为实体内部的联系和实体之间的联系

53、。实体内部的联系通常是组成实体的各属性之间 的联系。两个实体型之间的联系可以分为 3 类,一对一联系,(1:1);一对多联系(1 : n);多对多联系(m : n)。 概念模型是对信息世界建模,所以概念模型应该能够方便、准确地表示信息世界 中的常用概念。概念模型的表示方法很多,其中最为常用的是 p.p.s.chen 于 1976 年 提出的实体,联系方法(entity-relationship approach)简记为 e-r 表示法)。该方法 用 e-r 图来描述现实世界的概念模型,称为实体-联系模型,简称 e-r 模型。 根据数据流程分析,绘制网上书城的全局 e-r 模型如图 4-1 所示

54、。 图 4-1 全局 e-r 模型图 根据设计规划的主要实体有:用户、图书分类、图书、购物车、订单、管理员。 各个实体具体的描述属性图如下(实体属性在下图中并没有全部给出,因为属性过多 的原因): 图 4-2 用户实体图 图 4-3 图书分类实体图 图 4-4 图书实体图 图 4-5 购物车实体图 图 4-6 订单实体图 图 4-7 订单项实体图 4.1.2 数据库表设计 数据库表设计主要是把概念结构设计时设计好的基本 e-r 图转换为与选用 dbms 产 品所支持的数据模型相符合的逻辑结构。它包括数据项、记录及记录间的联系、安全 性和一致性约束等等。导出的逻辑结构是否与概念模式一致,从功能和

55、性能上是否满 足用户的要求,要进行模式评价。 本系统数据库表如下: 表 4-1 t_user 数据类型数据类型主键主键是否空是否空说明说明 uidchar(32)yn主键 loginnamevarchar(50)nn登录名 loginpassvarchar(50)nn登录密码 emailvarchar(50)nn邮箱地址 statusbooleannn是否激活 activationcchar(64)nn激活码(唯一) 表 4-2 t_category 字段名称字段名称数据类型数据类型主键主键是否空是否空说明说明 cidchar(32)yn主键 cnamevarchar(50)nn分类名称 pi

56、dchar(32)ny父分类 id descvarchar(10)ny分类描述 orderbyintny序号,用来排序 表 4-3 t_book 字段名称字段名称数据类型数据类型主键主键是否空是否空说明说明 bidchar(32)yn主键 bnamevarchar(20)nn书图名称 authorvarchar(50)ny作者 pricedecimal(8,2)ny定价 currpricedecimal(8,2)ny当前价 discountdecimal(3,1)ny折扣 pressvarchar(10)ny出版社 publishtimechar(10)ny出版时间 editionintny版

57、次 pagenumint ny页数 wordnumintny字数 printtimechar(10)ny印刷时间 booksizeintny开本 papervarchar(50)ny纸质 cidchar(32)ny所属分类 id image_wvarchar(10)ny大图路径 orderbyintny序号,用来排序 表 4-4 t_cartitem 字段名称字段名称数据类型数据类型主键主键是否空是否空说明说明 cartitemidchar(32)yn主键 quantityintyn数量 bidchar(32)yn图书 id uidchar(32)yn用户 id orderybyintyn序号

58、,用来排序 表 4-5 t_order 字段名称字段名称数据类型数据类型主键主键是否空是否空说明说明 oidchar(32)yn主键 ordertimechar(19)yn下单时间 totaldecimal(1,2)yn合计金额 statusint yn订单状态 addressvarchar(10)yn收货地址 uidchar(32)yn用户 id 表 4-6 t_orderitem 字段名称字段名称数据类型数据类型主键主键是否空是否空说明说明 orderitemidchar(32)yn主键 quantityintyn数量 subtotaldecimal(8,2)yn小计 bidchar(32

59、)yn图书 id bnamevarchar(20)yn图书名称 currpricedecimal(8,2)yn图书当前价 image_bvarchar(10)yn图书小图路径 oidchar(32)yn所属订单 id 表 4-7 t_admin 字段名称数据类型数据类型主键主键是否空是否空说明说明 adminidchar(32)yn主键 adminnamevarchar(50)yn管理员名称 adminpwdvarchar(50)yn管理员密码 4.1.3 数据库表创建 管理员表创建 /*table structure for table t_admin */ drop table if ex

60、ists t_admin; create table t_admin ( adminid char(32) not null, adminname varchar(50) default null, adminpwd varchar(50) default null, primary key (adminid) ) engine=innodb default charset=utf8; 图书表创建 /*table structure for table t_book */ drop table if exists t_book; create table t_book ( bid char(3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论