已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 目目 录录 摘摘 要要i abstracti 第一章第一章 绪绪 论论 .1 1.1 研究背景1 1.2 研究内容2 1.3 研究意义2 1.4 论文结构2 第二章第二章 系统开发工具及环境介绍系统开发工具及环境介绍 .3 2.1.开发工具.3 2.1.1.dreamweaver mx.3 2.1.2.mysql 介绍4 2.1.3. eclipse.6 2.1.4.tomcat 5.0.7 2.2.网上书店环境配置.7 2.2.1.开发软件环境的搭建7 2.2.2.开发硬件环境8 2.3.jsp 技术概述8 2.4.javabean 与 servlet 介绍11 第三章第三章 网上旧书交易网站的详细设计网上旧书交易网站的详细设计 .15 3.1 系统功能模块15 3.2 系统总体设计16 3.3.数据库设计与分析.18 3.4 用例视图分析20 ii 第四章第四章 信息搜索模块的设计与实现信息搜索模块的设计与实现 .22 4.1.信息搜索技术概述.22 4.1.1.常用internet信息搜索方法22 4.1.2.关键字搜索22 4.2.信息搜索模块的设计.25 4.2.1.信息搜索模块的总体设计26 4.2.2.信息搜索模块的详细设计26 4.3.信息搜索模块的实现.28 4.3.1.简单查询28 4.3.2.高级查询31 第五章第五章 研究结论与未来研究研究结论与未来研究 .36 5.1研究内容的总结.36 5.2存在的不足和以后的研究方向.36 参考文献参考文献 .37 致致 谢谢 .37 i 基于 b/s 模式的校园网上旧书交易系统 摘摘 要要 :网上书店是随着这些网络技术的发展而出现的一种新型图书销售渠道。它依 靠计算机网络,以通讯技术为基础,实现了网上的图书交易。在我们学校,每年毕业生离校 时都会丢弃或以卖废纸的方式处理大量旧书,而对于一些低年级的学生而言,购买新书又是 很大一笔花费,因此学生在买教材时会首先考虑去买旧书,校园旧书交易网站的建立正是为 了提供这样一个旧书交易平台,帮助学生解决这一问题。买家可以从网站上获得大量书籍的 信息,通过网络方便快速买到种类繁多,价廉质优的旧书籍;卖家在网上能以全新的模式销 售自己闲置的书籍,能使旧书籍再次有效利用的同时还可获得一定的经济收益。本文介绍了 网站开发用到的工具和技术,包括 eclipse、jsp 、dreamweaver mx 、mysql、javascript;并阐述了依据软件工程的方法,分析、设计和实现一个网上旧书 交易系统的解决方案。 关键词关键词:电子商务,校园旧书交易,java,jsp,dreamweaver mx based on b/s of the campus used books online trading system abstract:with the development of network technology, the online bookstore as a new type of book sales channel becomes true. taking computer networks and communications technology as base, we can realize the online bookselling transactions. in our campus, there are a lot of graduates each year, and most of them take the way of discarding or selling paper to deal with their old books, meanwhile, the purchase of new books is a great cost for many low-grade students, so when they need to buy textbooks, they would first consider to buy used books. the establishment of the used book transactions website can be a proper platform for students to address this issue. buyers can get information about a large number of books from the site; conveniently and quickly buy a wide range of inexpensive and high quality old books through the network. sellers can sell their used books, make the old books repeated used and get proper economic benefits. this paper introduces the technology and tools used to develop the website, including eclipse, jsp, dreamweaver mx, mysql and javascript, following that, describes the process of analysis、design and implementation of the campus used book trading system according to the software engineering. key words: e-commerce, campus used book trading, java, jsp, dreamweaver mx 1 第一章第一章 绪绪 论论 1.11.1 研究背景研究背景 电子商务并不是一个新概念,可以说,在几十年前主机系统出现时就诞生了。但 是,近年来,internet 的出现给了电子商务以新的活力,基于 internet 的电子商务已经 引起了全世界的注意。 电子商务的发展有其必然性和可能性。传统的商业是以手工处理信息为主,并且通 过纸上的文字交换信息,但是随着处理和交换信息量的剧增,该过程变得越来越复杂, 这不仅增加了重复劳动量和额外开支,而且也增加了出错机会,在这种情况下需要一 种更加便利和先进的方式来快速交流和处理商业往来业务;另一方面,计算机技术的 发展及其广泛应用和先进通信技术的不断完善及使用导致了 edi 和 internet 的出现和 发展,这又使得电子商务的发展成为可能。 电子商务发展在世界范围内都是刚刚开始,其发展速度极为迅速,传统的商业模 式正不断地被新的商业模式所代替,无论什么模式都不具有固定性和成熟性。对于任 何国家来说,都有一个探索与创新的问题,这也为我国加快和跨越发展提供了难得的 机遇。我们要大胆进行创新,积极探索符合实际的商业模式,壮大企业的市场竞争能 力,以适应全球化的激烈竞争 在已经跨入 21 世纪的今天,人们使用和学习信息的方式以及信息的包装方式正在 进行着不可阻挡的革命,这次革命将比印刷术的出现所产生的影响以及对社会发展的 推动更为复杂而且巨大。网站的迷人之处在于综合使用文本、图象、声音、动画和视 频的信息和内容,具有丰富的多媒体表现与互动特点,无可置疑, 网站已成为最吸引 人的也最有效的信息传递手段和方式。 图书交易网站就是 internet 和电子商务发展的产物,近几年在我国发展迅猛,如 同一些书店纷纷在各地开设分店以拉近书店与顾客间距离一样。随着科学技术的迅速 发展,internet 这个科研工具已经成了大众型媒体传播手段。在我们学校,每年毕业 生离校时都会丢弃或以卖废纸的方式处理大量旧书,而对于一些低年级的学生而言, 购买新书又是很大一笔花费。因此学生在买教材时会首先考虑去买旧书,但由于目前 旧书资源缺乏、到外地购买不方便、价钱相对贵等问题,现有的旧书市场远远不能满 足学生的需求。而校园旧书交易网站的建立则能很好的为学生解决这一问题。 2 1.21.2 研究内容研究内容 校园网上旧书交易网站为用户提供了一个可以在网上买卖图书的平台。当卖者想 要处理闲置的图时,可心到该网站注册一下帐号,成功登录后填写图书相关的详细信 息,并留下自己的联系方式,系统将会把这些信息发布在网站上,供其他用户浏览查 看。当买者想要添置一些图书时,亦可在该网站上注册一个帐号,成功登录后可以浏 览查询想要的图书,长到后可以按网上卖者留下的联系方式联系他们,从而完成图书 交易。 校园旧书交易网站是 c2c 模式的电子商务系统,在开发过程中,我们遵照软件工 程的生命周期模型对系统进行分析和设计,并运用 java 程序设计语言和 jsp 网络编程 技术在 windows 平台上编码实现。该系统前台主要包括了以下功能模块:图书首页、 会员管理、图书分类、图书展示、图书搜索、留言板、后台数据库管理等。其中,图 书首页实现登陆注册,图书展示与查询等功能;会员管理实现个人信息管理功能;图 书分类实现对顾客上传的书籍进行分门别类的功能;留言板主要是供客户对网站与书 籍的进行提意见;而数据库管理则是用来存储会员信息与图书信息。 1.31.3 研究意义研究意义 校园旧书交易网站是一个类似于淘宝、易趣等性质的网站。买家可以从网站上获 得大量书籍的信息,他们通过网络能够方便快速买到种类繁多,价廉质优的旧书籍;卖 家在网上能以全新的模式销售自己闲置的书籍,能使旧书籍再次有效利用的同时还可获 得一定的经济收益。此系统通过先进的 web 技术为顾客(即学生)建立了一个可自行 在网上购书与售书的平台使某些学生不用的旧书能够以较为低廉的价格卖给需要的学 生,以达成双赢和书籍重复利用的目的。 1.41.4 论文结构论文结构 本论文共分为五章,各章节的主要内容如下:第一章是绪论,主要介绍了课题的 研究背景、内容及意义;第二章介绍了校园旧书交易系统的开发工具及环境;第三章 是整个系统的分析和设计,分别从功能模块、系统的总体设计、数据库的设计及用例 视图模型进行分析论述;第四章详细介绍了前台服务这一模块的设计及实现;最后, 第五章对这次课题的研究结论与未来的工作。 3 第二章第二章 系统开发工具及环境介绍系统开发工具及环境介绍 .开发开发工具工具 2.1.1.dreamweaver2.1.1.dreamweaver m mx x macromedia 公司推出的 dreamweaver mx 中文版,不仅是专业人员制作网站的首 选工具,而且普及到广大网页制作爱好者中,相对于其它网页制作工具和以前版本, 有以下这些优势: 对简体中文良好的支持,不会出现一些不兼容中文的现象。例如,在早期 的 dreamweaver4.0 中,制作 flash 按钮时会出现乱码。 使用 dreamweaver mx 中文版,可以在可视化界面制作出 asp,asp,net,jsp,php, coldfusion 站点。 dreamweaver mx 中文版自带大量模板,简化了用户的制作过程。 dreamweaver mx 中文版支持数量众多的第三方插件,大大增强了 dreamweaver mx 的功能。 通过配置 dreamweaver mx 生成符合 xhtml 的代码,确保用最新的 html 设计标准及时更新站点。 dreamweaver mx 十大新功能: 直观的新工作区 通过标记的文档窗口、可对接的面板组、可自定义的工具条和集成的文件浏览, 节省宝贵的开发时间。 更加强大的模板 为开发人员设置尖端的规则,以便在不影响站点设计的情况下输入内容。嵌套的 模板支持更为自定义的布局控制,而可编辑和可选的地区则允许开发人员更加灵活地 输入内容。 广泛的代码库 使用预置的代码库创建插入和更新表单、记录集导航页和用户认证页。通过用现 场数据填充设计视图来测试布局。 新服务器技术支持 dreamweaver mx 新增了对构建 coldfusion mx、asp.net 和 php 网站的支持, 以及对开发 asp、jsp 和传统 coldfusion 应用程序的支持。 4 帮助您起步的示例内容 利用专业质量的、预置的布局和代码,包括站点结构、表单、可访问的模板和 javascript 客户机方交互功能。运用能够即时为动态站点、静态站点或 isp 托管的 站点配置站点信息的站点设置向导,快速创建新站点。 xml 和 web 标准支持 通过 xml 支持保持前沿领先优势,包括编辑、确认和导入纲要。轻易地自省 coldfusion、.net 和 java 中基于 xml 的 web 服务。通过 xhtml 输出的默认创建 及标准 html 到 xhtml 的简单转换,确保标准一致性。 改进的级联样式表 2 (css2) 支持 使用 dreamweaver mx 中改进的 css 渲染和设计工具,构建符合最新 css 标准 的站点。dreamweaver mx css 面板经过增强,可显示内外部定义的样式,并支持仅设 计时间样式表。 高性能的新编码功能 利用高性能的编码功能(如代码提示、标记编辑器、可扩展的颜色编码、标记选 择器、代码片段和代码确认,更快地编写自己的代码。 辅助功能 利用页面和站点的符合性检查功能、产品内含的参考内容及辅助功能有源创作模 式,随时了解最新的美国法律和国际标准。 为 coldfusion mx 开发而优化 coldfusion 的初学者会发现站点向导、代码示例和参考材料很有帮助意义。而高 级开发人员可以利用最新的 coldfusion mx 功能,包括 coldfusion 组件、web 服务 以及集成的调试和跟踪。 2.1.2.mysql2.1.2.mysql 介绍介绍 mysql作为一种开放源码数据库,以其简单易用的特点广泛被广大用户采用,本文 将着重介绍mysql数据库的特点及使用入门。通过这篇文章,希望读者对mysql有一个 比较浅显的认识,达到基本操作的目的。更详细的信息请参考mysql的相关手册。 mysql虽然是免费的,但同oracle, sybase, informix, db2等商业数据库一样, 具有数据库系统的通用性: 1)数据库管理系统。我们知道,所谓的数据库就是一些结构化的数据的联合体, 5 要提供对这些数据的存取、增加、修改、删除或更加复杂的数据抽取等操作,需要有 一个支撑系统,这就是数据库管理系统(dbms) ,mysql完全具有这方面的功能。 2)关系型数据库管理系统。在数据库的发展历程中,曾出现过多种不同形式的数 据库系统,但关系型数据库管理系统(rdbms)以其优越性而被广为采用,象现在几 种广泛使用的数据库全为关系型数据库。同样,mysql也是关系型的数据库系统,支持 标准的结构化查询语言(structured query language) 。 3)开放源码数据库。同商业性的数据库相比,这是mysql最大的特点。mysql的源 码是公开的,这就意味着任何人,只要遵守gpl的规则都可以对mysql的源码使用、修 改以符合自己特殊的需求。 4)技术特点。mysql是c/s架构的服务器,服务器端是多线程的,为客户端提供了 不同的程序接口和链接库,如c、c+、java、perl、php、tcl等,也提供了简单的管 理工具,如mysqladmin,mysql等。 正因为mysql的源码是公开的,使得我们有机会从源码级,更深入的了解mysql。 从这一层面上可以探求、了解mysql数据库的特性: 1)开发语言为c/c+,支持多种编译器,如gcc, cc, xlc, acc等 2)良好的内存管理机制,尤其是内存泄漏的管理,通过了purify的严格测 3)支持多种平台,如aix、solaris、hp、freebsd、tru64、sgi、windows等 4)提供多种形式的api,为我们开发工具的选择提供了便利 5)使用多线程的技术,可充分发挥系统的特点,避免在smp系统中出现仅使用单 cpu的现象 6)对磁盘表的管理采用b树加密及索引的技术,为我们快速访问数据提供了可能 7)高性能的内存申请技术 8)临时表采用在内存中以哈希表实现 9)提供多种数据类型,如signed/unsigned integer, double, blob等 10)支持定长的和变长的纪录 11)所有的列都有缺省值,为我们的某些“粗心“提供了方便 12)灵活、安全的权限和密码系统,密码在传输中加密传送,允许主机端验证密 码 13)客户端可以通过tcp/ip、unix套接字、命名管道(nt)连接到mysql数据库服 务器 6 14)提供windows端的odbc连接 15)对多种字符集的完全支持 mysql有如此多的特点,又由于其免费的特点,这就给许多的中小应用提供了不错 的选择。尤其是对一些中小企业,无论是从降低成本,还是从性能方面,采用mysql 作为其数据支撑系统,都是一种可行的方案。但也应当注意,采用mysql作为应用 数据库,就意味着所有的问题都需要自己解决,要承担一定的风险。 .1.3. eclipseeclipse eclipse 是一个开放源代码的、基于 java 的可扩展开发平台。就其本身而言,它 只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,eclipse 附带 了一个标准的插件集,包括 java 开发工具(java development tools,jdt) 。 虽然大多数用户很乐于将 eclipse 当作 java ide 来使用,但 eclipse 的目标不仅 限于此。eclipse 还包括插件开发环境(plug-in development environment,pde) ,这 个组件主要针对希望扩展 eclipse 的软件开发人员,因为它允许他们构建与 eclipse 环境无缝集成的工具。由于 eclipse 中的每样东西都是插件,对于给 eclipse 提供插 件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等 的发挥场所。 eclipse 工作台由几个称为 视图(view) 的窗格组成,比如左上角的 navigator 视图。窗格的集合称为 透视图(perspective) 。默认的透视图是 resource 透视图,它 是一个基本的通用视图集,用于管理项目以及查看和编辑项目中的文件。 navigator 视图 允许您创建、选择和删除项目。navigator 右侧的窗格是 编辑器 区域。取决于 navigator 中选定的文档类型,一个适当的编辑器窗口将在这里打开。 如果 eclipse 没有注册用于某特定文档类型(例如,windows 系统上的 .doc 文件) 的适当编辑器,eclipse 将设法使用外部编辑器来打开该文档。 outline 视图 在编辑器中显示文档的大纲;这个大纲的准确性取决于编辑器和文 档的类型;对于 java 源文件,该大纲将显示所有已声明的类、属性和方法。 tasks 视图 收集关于您正在操作的项目的信息;这可以是 eclipse 生成的信息, 比如编译错误,也可以是您手动添加的任务。 java 透视图。取决于您喜欢的屏幕管理方式,您可以通过选择 window=open perspective=java 来改变当前窗口中的透视图,也可以通过选择 window=new 7 window,然后再选择这个新的透视图,从而打开一个新的窗口。 2.1.4.tomcat2.1.4.tomcat 5.05.0 tomcat 是一个免费的开源的 serlvet 容器,它是 apache 基金会的 jakarta 项目中的 一个核心项目,由 apache,sun 和其它一些公司及个人共同开发而成。由于有了 sun 的参与和支持,最新的 servlet 和 jsp 规范总能在 tomcat 中得到体现。tomcat 被 javaworld 杂志的编辑选为 2001 年度最具创新的 java 产品,可见其在业界的地位。 目 录 用 途: 1. /bin 存放启动和关闭 tomcat 的脚本文件 2. /common/lib 存放 tomcat 服务器及所有 web 应用程序都可以访问的 jar 文件 3. /conf 存放 tomcat 服务器的各种配置文件,其中包括 server.xml(tomcat 的主要配置文件) 、tomcat-users.xml 和 web.xml 等配置文件 4. /logs 存放 tomcat 的日志文件 5. /server/lib 存放 tomcat 服务器运行所需的各种 jar 文件 6. /server/webapps 存放 tomcat 的两个 web 应用程序:admin 应用程序和 manager 应用程序 7. /shared/lib 存放所有 web 应用程序都可以访问的 jar 文件 8. /temp 存放 tomcat 运行时产生的临时文件 9. /webapps 当发布 web 应用程序时,通常把 web 应用程序的目录及文件放 到这个目录下 10. /work tomcat 将 jsp 生成的 servlet 源文件和字节码文件放到这个目录下。 在这次毕业设计中我们在 webapps 里面新建一个目录 bookshop,作为我们的 web 项目,以后的开发的文件写在里面,要测试的话要开启 web 服务器即可的。 .网上书店环境配置网上书店环境配置 2.2.1.开发软件环境开发软件环境的搭建的搭建 第一步:下载 j2sdk 和 tomcat:到 sun 官方站点 (/j2se/1.4.2/download.html)下载 j2sdk,注意下载版本为 windows offline installation 的 sdk,同时最好下载 j2se 1.4.2 documentation, 8 然后到 tomcat 官方站点(/dist/jakarta/tomcat-4/)下载 tomcat(下载最新 4.1.x 版本的 tomcat) ; 第二步:安装和配置你的 j2sdk 和 tomcat:执行 j2sdk 和 tomcat 的安装程序,然后 按默认设置进行安装即可。 1.安装 j2sdk 以后,需要配置一下环境变量,在我的电脑-属性-高级-环境变量-系 统变量中添加以下环境变量(假定你的 j2sdk 安装在 c:j2sdk1.4.2): java_home=c:j2sdk1.4.2 classpath=.;%java_home%libdt.jar;%java_home%libtools.jar;(.;一定不 能少,因为它代表当前路径) ,path=%java_home%bin 2.安装 tomcat 后,在我的电脑-属性-高级-环境变量-系统变量中添加以下环 境变量(假定你的 tomcat 安装在 c:tomcat): tomcat_home=c:tomcat; 然后修改环境变量中的 classpath,把 tomat 安装目录下的 commonlib 下的 servlet.jar 追加到 classpath 中去,修改后的 classpath 如下: classpath=.;%java_home%libdt.jar;%java_home%libtools.jar;% tomcat_home%commonlibservlet.jar; 接着可以启动 tomcat,在 ie 中访问 http:/localhost:8080,如果看到 tomcat 的欢迎页面的话说明安装成功了。 第三步:建立自己的 jsp app 目录 1.到 tomcat 的安装目录的 webapps 目录,可以看到 root,examples, tomcat-docs 之类 tomcat 自带的的目录; 2.在 webapps 目录下新建一个目录,起名叫 myapp; 3.myapp 下新建一个目录 web-inf,注意,目录名称是区分大小写的; 4.现在可以新建文件进行测试。 2.2.2.开发硬件环境开发硬件环境 pc 微机 cpu2 内存硬盘 测试硬件环境 inter celeron2.66g512m80g 推荐硬件环境主频 2.0g 以上最少 256m,推荐 512m 以上40g 以上 9 2.3.jsp2.3.jsp 技术概述技术概述 jsp(javaserver pages)是由sun microsystems公司倡导、许多公司参与一起建立 的一种动态网页技术标准,其网址为/products/jsp。该技 术为创建显示动态生成内容的web页面提供了一个简捷而快速的方法。jsp技术的设计 目的是使得构造基于web的应用程序更加容易和快捷,而这些应用程序能够与各种web 服务器,应用服务器,浏览器和开发工具共同工作。 jsp规范是web服务器、应用服务 器、交易系统、以及开发工具供应商间广泛合作的结果。在传统的网页html文 (*htm,*.html)中加入java程序片段(scriptlet)和jsp标记(tag),就构成了jsp网页 (*.jsp)。web服务器在遇到访问jsp网页的请求时,首先执行其中的程序片段,然后将 执行结果以html格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行, 网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无 plugin,无activex,无java applet,甚至无frame。 jsp技术在多个方面加速了动态web页面的开发: 一将内容的生成和显示进行分离 使用jsp技术,web页面开发人员可以使用html或者xml标识来设计和格式化最终页 面。使用jsp标识或者小脚本来生成页面上的动态内容(内容是根据请求来变化的,例 如请求帐户信息或者特定的一瓶酒的价格) 。生成内容的逻辑被封装在标识和 javabeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑 被封装在标识和beans中,那么其他人,如web管理人员和页面设计者,能够编辑和使 用jsp页面,而不影响内容的生成。在服务器端,jsp引擎解释jsp标识和小脚本,生成 所请求的内容(例如,通过访问javabeans组件,使用jdbctm技术访问数据库,或者包 含文件) ,并且将结果以html(或者xml)页面的形式发送回浏览器。这有助于作者保 护自己的代码,而又保证任何基于html的web浏览器的完全可用性。 二强调可重用的组件 绝大多数jsp页面依赖于可重用的,跨平台的组件(javabeans或者enterprise javabeanstm组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交 换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基 于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果 的开发努力中得到平衡。 10 三采用标识简化页面开发 web页面开发人员不会都是熟悉脚本语言的编程人员。javaserver page技术封装 了许多功能,这些功能是在易用的、与jsp相关的xml标识中进行动态内容生成所需要 的。标准的jsp标识能够访问和实例化javabeans组件,设置或者检索组件属性,下载 applet,以及执行用其他方法更难于编码和耗时的功能。 通过开发定制化标识库,jsp技术是可以扩展的。今后,第三方开发人员和其他人 员可以为常用功能创建自己的标识库。这使得web页面开发人员能够使用熟悉的工具和 如同标识一样的执行特定功能的构件来工作。 jsp技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展 到能够支持企业级的分布式应用。作为采用java技术家族的一部分,以及java 2(企 业版体系结构)的一个组成部分,jsp技术能够支持高度复杂的基于web的应用。 由于jsp页面的内置脚本语言是基于java编程语言的,而且所有的jsp页面都被编 译成为java servlet,jsp页面就具有java技术的所有好处,包括健壮的存储管理和安 全性。作为java平台的一部分,jsp拥有java编程语言“一次编写,各处运行”的特点。 随着越来越多的供应商将jsp支持添加到他们的产品中,您可以使用自己所选择的服务 器和工具,更改工具或服务器并不影响当前的应用。当与java 2平台,企业版(j2ee) 和enterprise javabean技术整合时,jsp页面将提供企业级的扩展性和性能,这对于 在虚拟企业中部署基于web的应用是必需的。 四技术分析 microsoft 公司的 asp 技术也是动态网页开发技术。jsp和asp从形式上非常相似, asp程序员一眼就能认出以及。但是深入探究下去会发现它们很多的差别, 其中最主要的有以下三点: 1、jsp的效率和安全性更高 asp以源码形式存放,以解释方式运行,每次asp网页调用都需要对源码进行解释, 运行效率不高。另外,iis的漏洞曾使得许多网站源程序大曝光,包括笔者以前用asp 开发的网站,asp程序全部被人下载了去。jsp在执行以前先被编译成字节码 (byte code),字节码由java虚拟机(java virtual machine)解释执行,比源码解释的效率高; 服务器上还有字节码的cache机制,能提高字节码的访问效率。第一次调用jsp网页可 能稍慢,因为它被编译成cache,以后就快得多了。同时,jsp源程序不大可能被下载, 特别是javabean程序完全可以放到不对外的目录中。 11 2、jsp的组件 (component) 方式更方便 asp通过com来扩充复杂的功能,如文件上载、发送email以及将业务处理或者复杂 计算分离出来成为独立可重复利用的模块。jsp通过javabean实现了同样的功能扩充。 在开发方面,com的开发远比javabean复杂和繁琐,学会asp不难,但学会开发com可不 简单。而javabean就简单多了,从本文上述示例中可以看出开发javabean很方便。在 维护方面,com必须在服务器上注册,如果修改了com程序,就必须重新注册,甚至必 须关机和重新启动。javabean则不需要注册,放在classpath包含的目录中就行了。如 果javabean进行了修改,则jswdk和tomcat现在还需要关闭和重新运行(但不是关机) , 但开发者已经许诺将在以后的版本中做到不需要关闭服务器。另外javabean是完全的 oop,可以针对不同的业务处理功能方便地建立一整套可重复利用的对象库,例如用户 权限控制、email自动回复等等。 2.4.javabean2.4.javabean 与与 servletservlet 介绍介绍 ( (一一) ) javabeanjavabean javabean是可复用的平台独立的软件组件,开发者可以在软件构造器工具中其直 接进行可视化操作。 软件构造器工具可以是web页面构造器、可视化应用程序构造器、cui设计构造器 或服务器应用程序构造器。有时,构造器工具也可以是一个包含子一些bean的复合文 档的文档编辑器。 javabean可以是简单的cui要素,如按钮或滚动条;也可以是复杂的可视化软件组 件,如数据库视图,有些javabean是没有gui表现形式的,但这些javabean仍然可以使 用应用程序构造器可视化地进行组合。 一个javabean和一个javaapplet相似,是一个非常简单的遵循某种严格协议的 java类。每个javabean的功能都可能不一样,但它们都必须支持以下特征。 一个bean没有必须继承的特定的基类或接口。可视化的bean必须继承的类是 java.awt.component,这样它们才能添加到可视化容器中去,非可视化bean则不需要 继承这个类。有许多bean,无论是在应用程序构造器工具中,还是在最后创建好的应 用程序中,都具有很强的可视化特征,但这并非每个bean必须的特征。 在使用java编程时,并不是所有软件模块都需要转换成bean。bean比较适合于那 些具有可视化操作和定制特性的软件组件。 12 从基本上说,javabean可以看成是一个黑盒子,即只需要知道其功能而不必管其 内部结构的软件设备。黑盒子只介绍和定义其外部特征和与其他部分的接口,如按钮、 窗口、颜色、形状、句柄等。 通过将系统看成使用黑盒子关联起来的通讯网络,我们可以忽略黑盒子内部的系 统细节,从而有效地控制系统的整体性能。 1.完全的可移植性 javabean api与操作基础的独立于平台的java系统相结合,提供了独立于平台的 组件解决方案。因此,组件开发者就可以不必再为带有java applet平台特有的类库而 担心了。最终的结果都将是计算机界共享可重复使用的组件,并在任何支持java的系 统中无需修改地执行。 2.继承java的强大功能 现有的java结构已经提供了多种易于应用于组件的功能。其中一个比较重要的是 java本身的内置类发现功能,它可以使得对象在运行时彼此动态地交互作用,这样对 象就可以从开发系统或其开发历史中独立出来。 对于javabean而言,由于它是基于java语言的,所以它就自然地继承了这个对于 组件技术而言非常重要的功能,而不再需要任何额外开销来支持它。 javabean继承在现有java功能中还有一个重要的方面,就是持久性,它保存对象 并获得对象的内部状态。通过java提供的序列化(serialization)机制,持久性可以由 javabean自动进行处理。当然,在需要的时候,开发者也可以自己建立定制的持久性 方案。 3.应用程序构造器支持 javabean的另一个设计目标是设计环境的问题和开发者如何使用javabean创建应 用程序。javabean体系结构支持指定设计环境属性和编辑机制以便于javabean组件的 可视化编辑。这样开发者可以使用可视化应用程序构造器无缝地组装和修改javabean 组件。就像windows平台上的可视化开发工具vbx或ocx控件处理组件一样。通过这种方 法,组件开发者可以指定在开发环境中使用和操作组件的方法。 4.分布式计算支持 支持分布式计算虽然不是javabean体系结构中的核心元素,但也是javabean中的 一个主要问题。javabean使得开发者可以在任何时候使用分布式计算机制,但不使用 分布式计算的核心支持来给自己增加额外负担。这正是出于javabean组件的紧凑性考 13 虑的,无疑分布式计算需要大量的额外开销。 ( (二二)servlet)servlet servlet是使用java servlet 应用程序设计接口(api)及相关类和方法的 java 程序。除了 java servlet api,servlet 还可以使用用以扩展和添加到 api 的 java 类软件包。servlet 在启用 java 的 web 服务器上或应用服务器上运行并扩展了该服 务器的能力。java servlet对于web服务器就好象java applet对于web浏览器。 servlet装入web服务器并在web服务器内执行,而applet装入web浏览器并在web浏览器 内执行。java servlet api 定义了一个servlet 和java使能的服务器之间的一个标准 接口,这使得servlets具有跨服务器平台的特性。 servlet 通过创建一个框架来扩展服务器的能力,以提供在 web 上进行请求和响 应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给 servlet,并 让 servlet 建立起服务器返回给客户机的响应。 当启动 web 服务器或客户机第一次 请求服务时,可以自动装入 servlet。装入后, servlet 继续运行直到其它客户机发 出请求。servlet 的功能涉及范围很广。例如,servlet 可完成如下功能: (1)创建并返回一个包含基于客户请求性质的动态内容的完整的 html页面。 (2)创建可嵌入到现有 html 页面中的一部分 html 页面(html 片段) 。 (3)与其它服务器资源(包括数据库和基于 java 的应用程序)进行通信。 (4)用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机 上。例如,servlet 可以是多参与者的游戏服务器。 (5)当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至applet的 新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地执行会话 的情况下,applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或 标准(如 iiop)进行通信。 (6)对特殊的处理采用 mime 类型过滤数据,例如图像转换和服务器端包括(ssi) 。 (7)将定制的处理提供给所有服务器的程序。例如,servlet 可以修改如何认证用 户。 servlet 的生命周期始于将它装入 web 服务器的内存时,并在终止或重新装入 servlet 时结束。 14 (1)初始化 在下列时刻装入 servlet: 如果已配置自动装入选项,则在启动服务器时自动装入 在服务器启动后,客户机首次向 servlet 发出请求时 重新装入 servlet 时装入 servlet 后,服务器创建一个 servlet 实例并且调用 servlet 的 init() 方法。在初始化阶段,servlet 初始化参数被传递给 servletconfig对象。 (2)请求处理 对于到达服务器的客户机请求,服务器创建特定于请求的一个“请求”对象和一 个“响应”对象。服务器调用 servlet 的 service() 方法,该方法用于传递“请求” 和“响应”对象。service() 方法从“请求”对象获得请求信息、处理该请求并用 “响应”对象的方法以将响应传回客户机。service() 方法可以调用其它方法来处理 请求,例如 doget()、dopost() 或其它的方法。 (3)终止 当服务器不再需要 servlet, 或重新装入 servlet 的新实例时,服务器会调用 servlet 的 destroy() 方法。 3.java servlet api java servlet 开发工具(jsdk)提供了多个软件包,在编写 servlet 时需要用 到这些软件包。其中包括两个用于所有 servlet 的基本软件包:javax.servlet 和 javax.servlet.http。可从sun公司的web站点下载 java servlet 开发工具。 下面主 要介绍javax.servlet.http提供的http servlet应用编程接口。 http servlet 使用一个 html 表单来发送和接收数据。要创建一个 http servlet,请扩展 httpservlet 类, 该类是用专门的方法来处理 html 表单的 genericservlet 的一个子类。 html 表单是由 和 标记定义的。表 单中典型地包含输入字段(如文本输入字段、复选框、单选按钮和选择列表)和用于 提交数据的按钮。当提交信息时,它们还指定服务器应执行哪一个servlet(或其它的 程序) 。 httpservlet 类包含 init()、destroy()、service() 等方法。其中 init() 和 destroy() 方法是继承的。 15 第三章第三章 网上旧书交易网站的详细设计网上旧书交易网站的详细设计 本章将在分析现有的网上图书交易系统和图书信息发布平台特点的基础上,设计 基于 b/s 模式的校园旧书交易网站,包括系统功能模块,数据字典,系统整体的框架 结构的设计等。 3.13.1 系统功能模块系统功能模块 本系统是基于 web 的校园网上旧书交易系统,具体要实现的模块功能如下: (1)会员信息管理模块: 主要是实现新用户注册,用户登陆和用户基本信息管理的 功能。 用户注册:提供一个用户注册界面,包括用户名、密码,以及用户真实姓名、电 子邮箱、性别等真实信息。每一个浏览该网站的用户,如果想要浏览图书和详细信息首 先必须成为注册用户。用户注册成功后,网站将保存该用户所有的注册信息,而这些 信息将作为用户以后登陆的依据。 用户登陆:用户提供身份确认的功能,保证合法用户应有的权益,而且是否登陆 也将决定用户能否进一步浏览网页的其他的信息。 用户基本信息管理:用户登陆成功后可在此对自己的注册信息进行修改,比如密 码、联系方式和其他个人信息等。 (2)图书搜索模块: 图书搜索在图书网站中起着一个很重要的作用,它的成功与否 直接关系到用户的使用。它给用户提供了一个输入关键字查询的界面,并将符合关键 字查询的结果以页面的形式显示给用户。 本系统中,图书搜索模块分为简单搜索和高级搜索。简单查询即为按书名搜索, 也就是一种关键字搜索,可以输入一个字或几个字,可以实现模糊查询。高级查询有 书名、作者、出版社、isdn、售价范围(指定价格以下)多种方式可以相互组合,显示 方式有按出版日期,图书价格等等规则。用户可以选择其中任几种方式输入关键字, 然后进行查询,查询都为模糊查询,能匹配更多的结果 (3)前台图书管理模块:这是一个网上书店必备的功能。它包括图书展示与图书信 16 息发布两个模块: 在图书展示中首先要进行图书分类,继而进行图书在网站首页的展示与图书详细 信息的展示。图书分类可以为用户快捷的找到需要的图书,找出自己喜欢的图书,而 且分类的好坏影响用户的点击率。图书在首页的展示又分为新书上架与精品推荐,新 书上架功能模块实现了最新上传的图书展示的功能,并有专门的一个页面展示所有的 产品,用户可以点击该图片进行查看详细信息。精品推荐功能模块实现精品图书推荐 的功能,根据市场的供求关系,适时的提供一些图书为用户参考,这一功能一来可以 替一些用户的选择提供参考,二来也可以增加销售量。在图书的详细信息展示模块中 主要展示了图书的图片、书名、作者、出版社、版次、书目信息等,该功能模块实现 了用户对图书的详细了解,为用户购买相应的图书提供了依据。 图书信息发布模块主要是用于卖家在网站上发布一些最新的图书信息,如图书的 详细信息以及卖家的联系方式等。此外在图书的详细信息里还包含了一个书评的功能, 书评对用户既起导读的作用,也提供了与其他图书作比较的依据,并且还可能会影响 该图书的销售量。 (4) 界面设计:用户界面设计是人机信息交互的平台,是屏幕产品的重要组成部 分。界面设计是一个复杂的有不同学科参与的工程,认知心理学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 未来五年单色显示器(CRT)企业县域市场拓展与下沉战略分析研究报告
- 未来五年白茶行业直播电商战略分析研究报告
- 广告策略师招聘面试问题
- 未来五年赤扬木行业直播电商战略分析研究报告
- 未来五年通信系统嵌入式软件企业ESG实践与创新战略分析研究报告
- 思科技术工程师职业发展路径规划
- 2025福建宁德市部分市直医院招聘编外人员3人(二)备考题库附答案解析
- 2024年塔城地区直属机关遴选公务员笔试真题汇编附答案解析
- 2023年安阳市遴选公务员考试真题汇编附答案解析
- 2023年阜新市选调公务员笔试真题汇编附答案解析
- 面条工艺技法培训课件
- 高速公路环保知识培训课件
- 骑手安全知识培训内容课件
- 小班教学培训课件
- 汇川技术团队介绍
- (2025年标准)股东决策协议书
- 水环境治理基础知识培训课件
- 消防设施日常检查与维护方案
- 低温储罐课件
- 远程供电系统讲解
- 第10课 问题的分解 课件 2025-2026学年五年级上册信息技术浙教版
评论
0/150
提交评论