已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
广西科技大学JSP程序设计课程设计报告课程设计名称:网上书店 系 别 计算机学院 专 业 计算机科学与技术(软件工程方向) 班 级 计Y103 学 号 姓 名 指导老师 2013年 6月 18日23摘 要本系统是使用JSP技术实现的一个网上购书系统,它是在Windows 7下,以SQL Server 2008为数据库开发平台,Tomcat为服务器,Eclipse为开发工具,采用JSP(Java Server Pages)技术开发的网上购书网站。系统分前台部分和后台部分,前台部分由用户使用,主要包括用户使用指南、会员登录,会员注册,按书本类型浏览书籍,选购书籍,购物车管理,查看用户订单等功能。后台部分由管理员使用,主要包括浏览书籍,添加书籍,删除书籍,浏览用户,删除用户,浏览用户订单,更新用户订单,删除用户订单,退出系统等等功能。关键字:网上书店;JSP+servlet技术;网页开发目录1 绪论。41.1 引言。41.2 课程作业的目的和意义。42 系统开发技术和环境。52.1 网站开发工具Eclipse。52.2 服务器Tomcat6.0简介。52.3 数据库SQL Server 2008简介。52.4 JSP技术工作原理。52.4.1 JSP技术简介。52.4.2 JSP技术的优点。62.4.3 Java Servlet概述。62.4.4 JavaBean简介。62.5 网站开发模式。73 系统分析。83.1 设计目标。83.2 网上书店的需求分析。83.2.1 网上书店的设计。83.2.2 系统设计总的原则。84 系统的总体设计。94.1 网上书店系统功能分析。94.1.1用户界面。94.1.2管理员界面。94.2 系统流程分析。94.2.1 网上书店总体结构 。9 4.2.2购买书籍流程。104.3 系统数据库设计。114.3.1 数据库设计分析。114.3.2 E-R图 。114.3.3 数据库具体设计。125 系统的详细设计和实现。135.1 前台设计(用户界面) 。135.1.1 书店首页。135.1.2 登陆。135.1.3 注册。135.1.4 我的购物车。135.1.5 查询订单。135.1.6 管理员入口。135.1.7 浏览、购买书籍。145.1.8 购买书籍。145.1.9 退出。145.2 后台设计(管理员界面) 。145.2.1 添加图书。145.2.2 浏览、管理图书订单。145.2.3 浏览、管理用户。145.2.4 浏览、删除图书。145.2.5 退出。146 系统运行。146.1 网上书店首页。146.2 用户登陆。156.3 用户注册。166.4 查询订单。166.5 购买书籍。176.6 查询书籍。186.7 管理员登陆。186.8 删除书本。196.9 添加书本。196.10 管理图书订单。196.11 管理用户。20课程作业后收获。21致谢。22参考文献。231 绪 论1.1 引言目前,网络正以一种前所未有的冲击力在影响着人类的活动,包括人类的生产和日常生活。网络的诞生和发展,颠覆了传统的信息传播方式,冲破了存在于传统交流方式中时间和空间的种种壁垒,极大地改变了人类从物质到精神、从形式到内容、从生产到生活的各种活动,并且给人类带来了新的机遇和挑战。JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入JAVA程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件。1.2 课程作业的目的和意义Internet的发展,为改变传统的商业运作模式提供了一种技术上的可行性的方案:利用Internet的技术和协议,将买家与卖家、厂商和合作伙伴紧密结合在了一起,消除时间与空间带来的障碍,从而大大的节约了交易成本,扩大了交易范围。而在实际的生活中,这种方案已经被广泛的运用到了实际的商业活动中了。设计和完成一个网上书店网站,将会牵涉到许多技术上的问题,如:动态网页制作技术的、后台数据库的设计和管理,通过实际的制作个网站,在实践中掌握上述技术的使用。(1)理论联系实际。通过自己动手,把以往纯理论的理论知识和实践结合起来。在实践中验证理论的正确性。(2)学习技术,培养自学和探索能力。使用JSP技术,结合HTML都快速的开发网站。通过这个网站的构建,能熟练掌握jsp技术,并将了解整个网站开发的流程,对今后的工作奠定基础3、弥补理论知识和实践的距离。整个项目以开发一个可运行但功能较简单的网站为目标,虽然只有基础的功能,但是符合现阶段我们的能力要求。整个过程中,会遇到很多问题,这就需要我们有更强的动手能力,这样通过动手操作能大大缩短理论知识和实践的距离,提升自己的整体实力,不做现实中的书呆子。2 系统开发技术和环境2.1 网站开发工具EclipseEclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成Eclipse Platform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。2.2 服务器Tomcat6.0简介Tomcat 服务器是一个免费的开放源代码的Web 应用服务器。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。Tomcat短小精悍,配置方便,能满足我们的需求,因此选择Tomcat作为我们的服务器。2.3 数据库SQL Server 2008简介SQL Server 2008 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。通过该数据库,可构建我们自己的网上书店数据库,方便管理我们的各种信息。2.4 JSP技术工作原理2.4.1 JSP技术简介JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。所有程序都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低。它基于强大的Java语言,具有良好的伸缩性,在网络数据库应用开发领域具有得天独厚的优势。2.4.2 JSP技术的优点JSP技术在多个方面加速了动态Web页面的开发:(1)将内容的生成和显示进行分离 使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。(2)强调可重用的组件 绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。(3)采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。(4)健壮的存储管理和安全性 由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。(5)一次编写,各处运行作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。2.4.3 Java Servlet概述Servlet是Java编写的服务器端程序,是由服务器端执行和调用的Java类。Servlet是采用Java技术来实现CGI功能的一种技术,能够像CGI一样动态地扩展Web服务器的功能,并采用请求响应模式提供Web服务。JSP技术是用JAVA语言作为脚本语言的。2.4.4 JavaBean简介JavaBean是一种基于Java的软件组件,可以通过封装业务逻辑建立一整套可重复利用的对象库。JSP对于在Web应用中集成JavaBean组件提供了完善的支持,这种支持不仅能缩短开发时间,避免重复开发,也为JSP应用带来了更多的可伸缩性。JavaBean组件可以用来执行复杂的计算任务,或负责与数据库的交互及数据提取等。JavaBean组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。2.5 网站开发模式目前,JSP技术已经成为一种受大多数大型企业或中小型企业喜爱的动态网页开发技术。JSP网站开发技术标准提供了两种开发模式:一种是JSP+JavaBean开发模式;一种是JSP+Servlet+JavaBean开发模式。JSP+JavaBean模型图如图2-3所示:图2-3 JSP+JavaBean模型图在这种模型中,JSP页面独自响应请求并将处理结果返回给客户,所有的数据通过JavaBean来处理,JSP实现页面的显示。此模型常常会导致页面被嵌入大量的脚本语言或者Java代码段,当处理大型业务时,页面程序将变得异常复杂给开发和维护带来困难。JSP+Servlet+JavaBean模型图如图2-4所示:图2-4 JSP+Servlet+JavaBean模型图Servlet技术是一种采用Java技术来实现CGI功能的一种技术。Servlet是运行在Web服务器上,用来生成Web页面。Servlet技术非常适于服务器端的处理和编程。在此种开发模式中,JSP技术用来显示页面,该页面中没有任何的商业处理逻辑,通过Servlet技术来完成大量的事物处理工作。Servlet用来处理事务的请求,充当着一个控制者的角色,并负责向客户发送请求,创建JSP需要的Bean和对象,根据用户的请求行为,决定将哪个JSP页面发送给用户。本设计主要使用第二种开发模式,简单实用,便于管理。3 系统分析3.1 设计目标本次网上书店程序的编写采用JSP+servlet+SQLServer2008数据库的架构实现的。本系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询、购买书籍使用。包括:浏览、查询、购物车、信息管理等功能;后台管理是提供给管理员的,其中包括:用户管理、订单管理等,使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。3.2 网上书店的需求分析3.2.1 网上书店的设计 (1) 能够完成用户基本信息录入的注册和用户登陆。(2) 能够完成管理员对网站的会员管理、操作管理的功能。(3)网上书店的业务能够正常运作。用户可或管理员能够产生很好地互动功能。3.2.2 系统设计总的原则(1)简单性。在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个网站来说是非常重要的。(2)针对性。该是为网上书店开发使用的,必须优先考虑网上书店买卖的逻辑实现,不能喧宾夺主。(3)功能完整性。该系统必须能够完成基本的购买、发送货物、查看信息等功能,也能进行书本添加、用户信息保证等。4 系统的总体设计4.1 网上书店系统功能分析 4.1.1用户界面。 能够完成用户登陆、注册、购物车、购买书籍、管理员登陆、查看订单以及浏览书籍等功能。4.1.2 管理员界面。能够实现书籍管理(浏览、增加、删除)、用户管理、订单管理(删除、发货)等功能。4.2 系统流程分析4.2.1 网上书店总体结构网上书店用户模块管理员模块用户管理管理图书订单管理员登陆查看订单用户登陆用户注册书籍管理退出该用户购物车查看书籍 4.2.2购买书籍流程是是进入网上书店加入购物车输入收获信息后,确认购买选择书本类型单击书本名称,输入购买数量交易成功是选择购物车,查看商品,确认购买否否 4.3 系统数据库设计4.3.1 数据库设计分析网上书店的主要对象是用户,所以必需建立用户表,包括用户的基本信息情况;用户的主要活动是对书籍的购买,所以必需书籍信息表;用户对商品的购买,用户提交定单,建立定单表;管理员必须进行对书籍的更新等操作,因为必须有管理员表。4.3.2 E-R图用户密码用户地址用户电话用户姓名用户信息表管理员密码管理员姓名管理员电话管理员地址管理员信息表书本名称书本价格书本类型书本描述书本信息订单信息收单人姓名购买的书书的价格收单人姓名用户名订单编号收单人地址订单时间订单状态4.3.3 数据库具体设计用户信息表buser字段名数据类型长度是否允许为空描述namevarchar50否用户名passwordvarchar50否密码telvarchar50是电话addressvarchar50是地址管理员信息表adm字段名数据类型长度是否允许为空描述namevarchar50否管理员名passwordvarchar50否密码telvarchar50是电话addrssvarchar50是地址书本类型表typ字段名数据类型长度是否允许为空描述idvarchar50否书本类型编号namevarchar50否书本类型书本信息表book字段名数据类型长度是否允许为空描述booknamevarchar50否书本名字typevarchar50否书本类型pricevarchar50否书本价格descvarchar500否书本信息描述订单信息表ord字段名数据类型长度是否允许为空描述ordernovarchar50否订单编号usernamevarchar50否用户名realnamevarchar50否收单人姓名booknamevarchar50否购买的书pricevarchar50否书的价格telvarchar50否收单人姓名addressvarchar50否收单人地址timevarchar50否订单时间stavarchar50否订单状态5 系统的详细设计和实现5.1 前台设计(用户界面)5.1.1 书店首页:单击可回到书店首页; 5.1.2 登陆:登陆后,可进行 购买书籍,查看订单操作。(登陆成功则出现提示操作成功,若登陆失败也提示失败)5.1.3 注册:填写注册信息后,可以成为本站会员,进行购书;(若操作不成功或用户名已经存在,则提示失败;若成功注册提示成功)5.1.4 我的购物车:进入本网站后,可以拥有自己的购物车,可以对书本的预购买和移除,若需购买,则需要进行登陆操作后才可以进行后续操作;(若购物车没有书,不能购书,购书提示错误)5.1.5 查询订单:若用户已经登陆成功,可查看已购买的图书以及订单信息,如是否发货。(若没有登陆,则跳转到登陆界面)5.1.6 管理员入口:单击后可进行登陆管理员界面,可对书店进行管理操作。(若登陆失败,则跳转到网页首页)5.1.7 浏览、购买书籍:单击 书本类型 可进行浏览书籍信息,若想把书籍添加到购物车,可单击书名即可进行操作(添加后,返回主页面,可在 我的购物车里面查看添加信息)5.1.8 购买书籍:若想购买书籍,可进入购物车后,单击 购买图书 进行后续操作(购买成功则提示成功)5.1.9 退出:单击“退出”,可退出该用户5.2 后台设计(管理员界面)5.2.1 添加图书:单击“添加图书”,填写图书信息,单击添加即可(若图书类型数据库没有,则自动添加图书类型)5.2.2 浏览、管理图书订单:可对已发货或没有发货进行操作。若已发货,则可以进行删除订单操作,若没有发货,则可以进行发货和删除订单操作。5.2.3 浏览、管理用户:单击后,可以对用户信息进行浏览和删除操作。5.2.4 浏览、删除图书:单击“书本类型”,可以查询已存在的图书,若对书进行下架处理,则可以进行删除图书5.2.5 退出:退出可退出管理员界面,进入网站界面。6 系统运行6.1 运行系统,系统自动到网上书店首页。在这里可以看到各种连接,单击连接即可进入相应的功能模块,然后进行相关操作。在这里也可以查看到用户使用指南,里面列出了系统的基本功能和操作。图6-16.2 用户登陆界面。用户的用户名和密码都不能为空。若为空,则提示用户输入,如图6-2。若登陆成功则提示成功,并显示用户名称,如图6-3,若登陆失败,提示失败,并返回首页,如图6-4图6-2图6-3图6-46.3 用户注册界面。表格里面的数据都不能为空。若为空,则提示用户输入,如图6-5。若登陆成功则提示成功,并显示用户名称,如图6-3,若登陆失败,提示失败,并返回首页,如图6-4图6-56.4 用户hui之后,查询该用户的订单,如图6-6,可以查看到订单的详细信息。若用户没有进行登陆,则直接跳转到用户登陆界面。表格里面的数据都不能为空。若为空,则提示用户输入,如图6-5。若登陆成功则提示成功,并显示用户名称,如图6-3,若登陆失败,提示失败,并返回首页,如图6-4图6-66.5 购买书籍。单击我的购物车,可以查看到已经选购并放入购物车的书籍,如图6-7。若想将书籍移出购物车,可单击取消。若想付款购买书籍,单击购买图书即可。若想继续添加购买书籍,可以选择购买的类型之后,单击书本名称,并输入购买的数量,即可将书放入购物车,如图6-8。若想购买书籍,单击购买图书,即可跳转到用户接收信息填入界面,如图6-9,填完信息后,单击确认,即可将购物车里面的书籍全部购买。图6-7图6-8图6-96.6 查询书籍。若想查询书籍,单击书本类型下的任意类型即可显示该类型的全部书籍,若想将书籍放入购物车,单击书本名字即可,如图6-10图6-106.7 管理员登陆。输入管理员名称和管理员密码即可进行登陆,如图6-11。若输入错误,返回网站首页,若输入正确,跳转到管理员首页,如图6-12。图6-11图6-126.8 若想对书本的进行删除处理,选择相应的书本类型,即可对特定的书籍进行删除处理,如图6-13图6-136.9 若想添加书本,单击添加图书,即可对书籍进行添加。若书本类型不存在,则自动增加到书本类型。如图6-14图6-146.10 管理图书订单。单击管理图书订单,即可显示所有的图书订单。单击发货,即可对通知用户已经将书籍邮递,若进行对订单进行删除处理,单击删除即可,如图6-15图6-156.11 管理用户。若想对用户进行管理,单击管理用户即可。单击删除用户,即可对用户进行删除处理,如图6-16图6-16课程作业后收获整个项目历经了一个多月,终于完成了。每一天编码都不一样,每一天过得很紧张,但也过得很充实。刚开始做项目的时候,感觉一切都是新的。按部就班地,一步一个脚印,慢慢地走着,走到了今天。通过这个课程作业,我深深地了解到了课程作业给我们带来的充实和欢乐。通过这个课程作业,我感触很深。第一个是学会分层思想。数据库代码的分层,很好的解决了代码重用的功能。其实很多功能的实现基本都一样,所以将核心代码分离出来,就能很好的为后续写代码奠定基础。第二个是积累代码量。俗话说的好,熟能生巧。当你在不断地敲代码的过程中,也就不断地积累了项目经验,也在不知不觉中提升了自己的实力。通过此次课程代码的编程,发觉自己编程能力得到了很大的提高。第三个是积累和管理有效代码量。每个项目的学习,自己都会学到新的知识,如何让学到的知识,为你的整个人生服务,需要你总结,需要你的提炼。虽然说敲多代码的人肯定技术比较娴熟,但假如一个人积累了一个有效代码库,随着人生阅历和锻炼的增长,不断地往代码库填充新的知识,那么你编程的速度和编程的质量将得到很好的保证。当你有了代码库之后,你只需要将代码从库中拿出来,修修改改也就成了另一个项目了,多轻松啊。所以要记得积累自己的代码库。第四是往底层走。自己要学会从更底层的地方去理解程序的,理解程序的运行机制。因为当你理解了它的运行机制后,你会发觉编写的代码会跟着这个机制走下去,并且出错的几率大大降低,还有就是即使会出现错误,也能很好地发现错误。第五是学会问问题。当你不懂的时候,不要马上举手问。你需要自己的探索,需要你自己去动脑筋。把你所能想到的运行方式都进行运行验证,即使是错的,假如你还不能肯定,你还得再试试。有时候有些事情只有自己掌握了才是真正对自己的人生最大的裨益。假如你还不能解决,那你就要学会问人的技巧了。毕竟人无完人,总有求人的时候。但请把你该做的事情都做好了。我发现很多人,总是这样,不懂就问。当别人去帮助他使,问他程序是怎么运行出错的,他会在那里好好想一下,慢慢的找一下,最后不断地尝试之后,终于把问题找到了。为了重现异常,就得重新把程序跑起来。终于把问题问出来了。我只能说我很无语。当做项目的时候,每个人都会有它自己的事情要做,作为程序员,他很热爱他的编程,并且希望把程序做的更好,不断完善。也许他很热情,但他不喜欢浪
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年个人数码产品买卖合同模板
- 人教版八年级语文上册说课稿9、《老王》说课稿
- 2024年企业借款协议样本:公司借款格式与规定
- 二年级下册数学教案-2.2《用2~6的乘法口诀求商》 人教版
- 一年级下册数学教案-找规律(三)-(人教版)
- 人教部编版五年级上册语文《太阳》教学设计及教学反思
- 中班体育教案:投篮
- 大班主题教案:小记者
- 文化企业党建工作总结与未来展望
- 大班健康教案:小小兵
- 远离黄赌毒学习教案
- 幼儿园转课协议书范文范本
- 2023年银行反洗钱知识竞赛题库及答案(120题)
- 广东省深圳市宝安区2024-2025学年三年级上学期月考数学试卷(10月份)
- 人教版六年级上册道德与法治知识点
- 与蓟州区幼儿园结对帮扶协议书(2篇)
- 第三次全国农作物种质资源普查与收集行动实施方案
- 第二单元 探索 3 物联网的定位技术 (教学设计) 2024-2025学年苏科版(2023) 初中信息技术八年级上册
- 部编版《道德与法治》二年级上册第9课《这些是大家的》课件(共50张课件)
- 2024年(每周一练)语文五年级上册基础练习题(含答案)
- 2024-2030年中国中低温煤焦油行业现状调研与发展前景预测分析研究报告
评论
0/150
提交评论