您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > web应用技术课程设计(图书管理系统)
《Web应用技术》课程设计报告学院:管理学院专业:学号姓名:指导教师:日期:2012.06.26一、系统简介(系统开发的背景、目的、意义等)二、系统分析2.1现状及存在的不足2.2功能需求2.3流程需求2.4其他三、系统设计3.1系统设计的目标3.2系统功能模块设计3.3数据库设计(ER图等)3.4其他设计(如编码设计等)四、系统实现4.1系统采用的技术说明4.2主要功能的实现代码和界面4.3javabean的相关说明五、系统部署说明(环境配置、数据源等)六、代表性窗口与测试报告测试帐户测试流程七、用户使用说明八、课程设计小结本系统的评价课程设计的收获与不足一.系统简介JAVA语言是目前Internet上大型的WEB应用程序开发时使用得最热门的编程语言,本文描述了JAVA和JSP技术的特点以及在互联网上的使用情况,介绍这两种技术的重要编程方法和两者之关的联系,同时也会应用相关的Struts框架,并完成一个基于这种技术的网上书店系统。【关键字】JAVA,Servlet,JSP,网络编程,电子商务,网上书店JAVA的网络功能与编程1-1JAVA语言简介Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是JavaApplet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着JavaServlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(JavaServerPage)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。1-2JAVA语言在网络上的应用Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源,并可以对获得的资源进行处理。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出来。在编程处理上,一般先生成一个URL类型的对象,然后用Java中相应的方法(method)获取该对象所代表的资源。1-3JSP的基础——Servlet技术JavaServlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用JavaServlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合JavaServlet规范,Servlet是完全平台无关且是Web服务器无关的。由于JavaServlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此JavaServlet效率非常高。但JavaServlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,JavaServlet是利用输出HTML语句来实现动态网页的,如果用JavaServlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么SUN还要推出JavaServerPages的原因。MVC简介模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。1、模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.2、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。3、控制器(controller)控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。MVC式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性早期的程序中,如果不注意对数功能和显示的解耦合,常常会导致程序的复杂及难以维护。很多VB,Delphi等RAD程序都有这种问题。甚至现在的C#,Java有时候也会出现把业务逻辑写在显示模块中的现象管MVC设计模式很早就提出,但在Web项目的开发中引入MVC却是步履维艰。主要原因:一是在早期的Web项目的开发中,程序语言和HTML的分离一直难以实现。CGI程序以字符串输出的形式动态地生成HTML内容。后来随着脚本语言的出现,前面的方式又被倒了过来,改成将脚本语言书写的程序嵌入在HTML内容中。这两种方式有一个相同的不足之处即它们总是无法将程序语言和HTML分离。二是脚本语言的功能相对较弱,缺乏支持MVC设计模式的一些必要的技术基础。直到基于J2EE的JSPModel2问世时才得以改观。它用JSP技术实现视图的功能,用Servlet技术实现控制器的功能,用JavaBean技术实现模型的功能JSPModel1与JSPModel2SUN在JSP出现早期制定了两种规范,称为Model1和Model2。虽然Model2在一定程度上实现了MVC,但是它的应用用并不尽如人意JSPModel1二.需求分析网上书店系统主要是实现网上选书、购书、产生订单等功能的系统。一个典型的网上商城一般都需要实现商品信息的动态提示、购物车管理、客户信息注册登录管理、订单处理等模块。根据网上书店的基本需求,本系统需要完成的具体任务如下:A.书图查询:当客户进入网上书店时,应该在主页面中分类显示最新的书目信息,以供客户选择所需图书,同时也应该提供按照图书名称,或者作者信息快速查询所需书目信息的功能。B.购物车管理:当客户选择购买某图书产品时,应该能够将对应图书信息,如:价格、数量记录到对应的购物车中,并允许客户返回书目查询页面,选择其他商品,并添加到购物车中,当对应的购物订单生成后,应该能够自动清除以生成订单的购物车中的信息。C.订单处理:对应客户购买图书商品信息的需求,在确定了所购图书商品的价格、数量等信息后,提示用户选择对应的送货方式及付款方式,最终生成对应的订单记录,以便于网站配货人员依据订单信息进行后续的出货、送货的处理。D.会员注册:为了能够实现图书商品的购买,需要管理客户相关的联系方式、送货地点等相关的信息。功能性需求功能性需求分析是指对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析是软件设计、实现测试直至维护的主要基础,良好的需求分析可以避免或尽早提出早期的错误,从而降低软件的开发成本,改进软件的质量。需求分析的任务是通过详细调查现实世界要处理的对象,充分了解系统的工作概况,明确各种功能需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变[3]。系统对数据的安全性、完整性要求表现在:用户信息保密,只有管理员可见(可查),但不能任意修改。确保用户信息安全。此外,图书信息、用户信息必须保证其完整性,防止恶意删改。以下是系统性能需求:(1)准确性和可靠性高。(2)页面友好,功能齐全,且可以方便使用。三.系统设计3.1总体设计目标网站用户通过使用本系统,可以随时根据需要,查询上映图书信息,对图书网站中的个人信息进行修改,并可以根据个人喜好提前预定图书,避免了现场排队之苦,同时也减少书店方面的人力和物力的投资。作为一个在线购书网站,除了要功能强大、操作简单、符合上述需求分析,还应实现其他目标,以适用于各类城市影院,具体要求如下:(1)界面在设计上要美观、友好,操作要快捷、准确;(2)数据存储要安全可靠;(3)注册用户可以随时修改个人信息;(4)对于用户输入的数据,系统要有严格的检错机制,尽可能排除人为错误;(5)系统要最大限度的实现易维护性,运行要稳定、可靠、安全。3.2功能模块设计概念模型是信息管理系统设计中较早却相当重要的一步,为了全面获取本系统的概念模型,首先需要分析整个网站的操作流程。以用户在购票体验上尽量接近一般网购方式为出发点,网站在设计上应使购票流程尽量贴近人们平时的网购习惯。因此,可以得到用户登录网站进行购票的流程图,如图3-1所示。从网站管理员角度来看,管理员进入网站后台选择相应的功能,操作结束后,仍可以进行其他操作,或者没有操作时退出网站。网站后台管理流程如图3-2所示。网站前台图书浏览、购买修改购物车给图书评价修改个人信息用户登录结束退出继续操作图3-1前台管理流程图是否是否网站用户注册新用户是否整个系统的处理流程如下:(1)用户进入登录页面,身份验证:普通用户和管理员的权限有所不同。(2)正常进入网站:身份核实无误后,按权限的不同,普通用户进入网站前台,管理员进入网站后台。(3)执行各任务:根据各自需求,进行各项操作。(4)一任务执行完毕后重新返回主页:执行任务后回到主页能够保证操作的条理性。(5)执行完毕,退出网站:若所要执行的任务全部完成,即可退出网站。为了最终实现目标系统,必须设计出组成这个系统的所有程序、文件以及数据库。模块是数据说明、可执行语句等程序设计对象的集合,它是单独命名的而且可通过名字来访问。模块化就是把程序化分成若干个模块,每个模块完成一个子功能,把这些模块集起来组成一个整体,可以完成指定的满足问题的要求[4]。通过以上流程分析,可以进一步设计出图书票预订网站的总体结构模块图,分别从用户和管理员两个不同的角度去设计,如图3-3所示。后台登录图书管理订单管理用户管理评价管理管理员结束退出继续操作图3-2后台管理流程图是否(1)用户模块:在本网站中,所有的用户在访问网站的时候均可以浏览查看图书信息、将图书加入购物车、查看购物车删除影票、给图书做出评价、修改个人基本信息。其功能结构模块图如图3-4所示。用户登录图书信息购物车信息图书评价个人信息浏览上映图书信息图3-4图书网站前台功能模块图将图书加入购物车查看购物车删除已订购给图书做出评价确认个人信息修改个人信息重新验证图3-3系统总体结构图退出系统身份验证进入系统后台修改个人信息图书管理订单管理用户管理查看图书信息购物车管理给图书评价评价管理进入系统前台(2)管理模块:在本网站中,管理员除了要进行相关信息的维护还有如下主要工作:定时查看图书评价信息,审查用户的评价是否具有合法性,删除恶意评价;定期对系统数据库进行备份,确保数据安全;及时更新新上映图书的信息,删除图书的信息等等。管理员通过后台登录网站,为确保系统的安全性,管理员后台登录会进行密码权限的检测。成功登录后,导航条上将出现“图书管理”、“订单管理”、“用户管理”及“评价管理”等按钮供管理员进行不同的系统操作。上述功能在前台不可见,属于网站的后台操作模块,因此这部分模块可定义为“后台管理”,其功能结构模块图如图3-5所示。具体任务分析如下:①图书管理模块的基本功能应包括添加、删除、修改图书信息等。当管理员单击其中的任何一个功能按钮时,都可以进行对网站前台显示的图书信息进行相关的操作。②用户管理模块的基本功能应包括网站用户基本信息查看和注销处理。其中用户基本信息查看包括用户真实姓名、手机号、电子邮箱、地址等。对于新注册的会员用户,管理员要对其注册信息进行审核。添加上映图书信息图书网站后台图书信息管理用户管理图书评价管理订单管理查看网站用户信息注销网站用户删除图书信息确认订单删除订单查看评价删除评价图3-5图书网站后台功能模块图③订单管理模块的基本功能应包括查看用户已下单
本文标题:web应用技术课程设计(图书管理系统)
链接地址:https://www.777doc.com/doc-5392472 .html