第1章 概述
1.1 课题背景
目前国内企业在管理销售方面还处在比较低的水平。大多数企业在生产和购进货物后,只是将销售用手写式的记录和简单的管理。进入信息社会后,随着企业销售订单的增多,带的麻烦也逐渐增多,管理方面也得不到很好的解决方法,使得大量的数据丢失,使企业造成了很大的损失。Internet已经成为人们生活、工作、学习越来越离不开的平台,在网上进行下单,交易可以更好方便,同时减少了纸质交易资料的管理工作,将全部交由数据库进行保存。
1.2 项目开发的目的及意义
建立一个基于B/S架构的企业订单系统,实现信息网络化.通过较丰富的功能将 Web的技术特点体现出来。该系统可供注册用户登录使用.登录者可以查询商品以及下订单,可以通过此网站管理供应商、商品 、订单等操作,实现增删改查的操作,方便网站的管理与维护。要实现这样的功能,离不开后台数据库的支持。本系统中数据库采用了MYSQL作为后台数据库,通过JDBC进行连接,通过SQL语句进行需要的增删改查功能,使得系统与数据库完美结合。整个页面由JSP技术进行开发实现,主要由Web页面生成与JS技术结合JavaBeans技术实现组件重用两部分组成。
本设计主要完成客户端,Web服务器端应用程序和数据库的制作,实现企业订单系统的创建,用户注册/登陆、对记录信息进行添加,删除,修改等功能。实现与完善整个基于B/S企业订单管理系统的组织建立和测试工作。
利用SUN公司推出的强大应用程序开发软件Java,结合有关管理规范的知识和实际调研的结果,进行了对“企业订单管理系统”的开发。该系统具有操作简单性、稳定性、安全性和友好性的优点,给用户呈现出满意的界面。
1.3 国内外动态分析
在国外,企业订单管理系统的发展非常迅速,在网上进行交易,进行订单的管理非常先进,减少了大量人工工作,同时减少了纸质管理中容易出现的一些错误。
目前,我国企业订单管理系统的管理还比较落后,很多企业还停留在纸质的订单管理。企业需要扩大客户数量,就要做好财务的收付工作和产品的管理,同时做好交易数据的管理。面对来自全世界的竞争和挑战,国内企业需要加强自身的管理,自己的信息化水平,更好的管理自己的数据,所以B/S的企业订单管理系统可
1
以解决这一方面的需求。
1.4 本文结构
第1章是概述,主要介绍课题背景与项目开发的目的和意义,以及对国内外动态的分析。
第2章是方案论证,主要介绍该系统开发时的方案选择,并从经济上、技术上论证了本系统是否可行,以及此系统所应用到的一些关键技术的简介。
第3章是需求分析,主要介绍了用户的需求,然后根据用户的需求得出系统应该具有什么功能。最后总结出系统最核心的两个业务逻辑:用户登录和用户下单,管理员对用户的订单进行管理。
第4章是过程论述,主要介绍了软件的系统构架以及系统的相关实体和实体间的关系,并论述了整个数据库的设计过程。最后详细的介绍了各个功能模块的实现过程,并讨论了系统的安全性设计。
第5章是软件测试,介绍了常用的软件测试方法:黑盒测试和白盒测试。并使用基本路径测试的方式对普通用户注册、管理员登录、管理员订单管理进行了测试。
最后是对本次毕业设计的总结和致谢。并在附录里给出了一些功能实现的代码和相关截图。
2
第2章 方案论证
2.1 可行性分析
2.1.1 技术可行性
本系统使用Java语言编写,Java语言简单,易上手,开发周期短。 在页面中使用AJAX进行网页局部刷新,减少了对服务器的请求压力。
在开发工具上使用Eclipse,数据库使用MySQL,MySQL数据库同样为轻便型小型数据库,其系统从一个地方到另一个地方的难易程度和安全性都是很乐观的,MVC在使用领域也逐渐地老练起来,该企业订单管理系统在技术上是切实可行的。
2.1.2 经济可行性
随着网络的迅速发展,计算机得到了普遍性。企业订单管理系统成为了很多企业在网上的分销渠道,该系统选择B/S架构,使用B/S架构的系统只需对服务器进行管理,所有的客户端都是浏览器,不需要做任何其它的维护,只要有一台电脑就能使用。同时,本系统的规模并不大,不需要太多的经费,但却十分有效的提高了办公的效率。所以开发订单管理系统是具有经济可行性的。 2.1.3 操作可行性
本系统操作较为简便,同时人员使用起来简单易上手,在开发中会在必要的地方加以提示,帮助人们更加方便地使用,所以在计算机较为普及的今天,很多人都可以进行操作。 2.1.4 法律可行性
本系统所使用的Eclipse和数据方面的信息及技术不违背法律,相关实现和技术不存在侵权问题。系统开发完后主要用于客户对企业进行下单,管理员进行管理订单,文明安全,禁止涉及任何违法行为。
2.2 最佳设计方案选择简介
2.2.1 MySQL5.0数据库
MySQL数据库是一个对源码开放的“小型关联式数据库管理系统”。MySQL比较适合运用于中小型网站。因为MySQL的运行速度比较快、所占容量较少、使用成本价较低,所以很多企业在经济实用角度出发会选择MySQL。其主要特性是:CPU利用率高,能够在一定程度上提高查询速度,同时优化了SQL语句的查
3
询算法,并且支持多线程,提供多种语言的支持,因此所需费用较低[1]。 2.2.2 JSP技术
JSP是一种动态网页技术标准。它是一种建立在由Servlet提供的规范功能智商的一种动态页面技术,它其实就是在早期的HTML形成网页的XML文件中插入了Java代码和一些JSP标记,从而形成了一个JSP文件[2]。
JSP开发的Web应用是跨平台的,不但能够在Linux下运行,也能在其他操作系统上运行。
JSP采用MVC的设计模式,可以将后台的业务逻辑控制与前台的网页设计分离,耦合性较低,同时给予组件进行设计,并且降低了WEB的前端程序开发[3]。 2.2.3 Servlet技术
Servlet是基于服务器端的一种Java应用程序,它有着与协议和平台都独立的特性,并且能够生成动态的Web网页(但是它自己本身的编程还是较为麻烦的,已经被很少运用)。Servlet可以作为MVC中的V层,也就是说作为服务器响应与客户请求的中间层,它其实是Web 服务器内部服务器端的一个比较小型的Java应用程序,但是Servlet与原来在命令行中启动的Java语言还是有所不同的[4]。Web服务器负责加载Servlet,但前提是Web服务器必须包含能够支持Servlet的Java虚拟机。
Servlet是Java Web服务器用来处理用户请求以及其他基于Web服务的Java类。他在Web服务中,根据用户的请求和传递过参数进行运算,返回处理后的结果。开发Servlet类须按照Servlet的要求继承HttpServlet类,实现相应的方法[5]。 2.2.4 AJAX技术
AJAX是Asynchronous JavaScript and XML的缩写,这一技术能够向服务器请求额外的数据而无需卸载整个页面,会带来良好的用户体验。传统的HTTP请求流程大概是这样的,浏览器向服务器发送请求-〉服务器根据浏览器传来数据生成response-〉服务器把response返回给浏览器-〉浏览器刷新整个页面显示最新数据,这个过程是同步的,顺序执行[6]。
AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求)从服务器获取数据,这里的异步是指脱离当前浏览器页面的请求、加载等单独执行,这意味着可以在不重新加载整个网页的情况下,通过JavaScript接受服务器传来的数据,然后操作DOM将新数据对网页的某部分进行更新[7]。使用Ajax最直观的感受是向服务器获取新数据不需要刷新页面等待了。 2.2.5 Eclipse开发工具
Eclipse maven企业级工作平台是对EclipseIDE的一种引申,利用它我们可以在数据库方面和Java2E的开发方面、发布以及应用程序服务器的整合方面,减少工作所用时间,极大的提升工作效益。它是功能非常全面的Java2E集成开发环
4
境,拥有完善编码、进行调试、进行测试以及发布功能,并且支持各种技术,包括:HTML,Struts,JSP技术,CSS,Javascript,Spring,SQL数据库,Hibernate。
Eclipse maven是一个非常优秀的用于开发Java, J2EE,maven项目的 Eclipse 插件集合,Eclipse maven的功能非常强大,支持范围也十分广泛,尤其是对各种开源产品的支持也非常好。Eclipse maven可以支持JavaServlet技术,AJAX,JSP,JSF,Struts,Spring,Hibernate,EJB3,JDBC数据库连接链接工具等多项功能。可以说Eclipse maven是几乎涵盖了目前所有主流开源产品的专属Eclipse开发工具。
2.3 开发方案的选择
B/S结构,是Web崛起后的一个计算机结构,Web是客户端最重要的使用软件。这种计算机结构融合了客户端,将系统模块完成的最主要部分会集到服务器上,使系统的开发、运行和应用得到相应的简化。开发企业订单管理系统,客户机上只要安装一个浏览器就可以了,最好是IE浏览器,服务器上安装一个MySQL数据库。
在B/S模式的体系结构系统中,服务器会对浏览器发出的请求进行进一步处理,将用户所需要的信息发到浏览器上。B/S架构使客户端的操作变得更加简单化,客户机上只需要配置一些客户端的软件[8]。
主要优点包括: 1. 具有分布性特点,可以随时随地进行查询、浏览等业务处理。 2. 业务扩展简单方便,通过增加网页即可增加服务器功能。
3. 维护简单方便,只需要改变网页,即可实现所有用户的同步更新。 4. 开发简单,共享性强。
综上所述,本系统使用B/S架构,选用Eclipse maven作为程序开发的主要工具、选用MySQL为数据库管理平台,使用AJAX技术进行页面的局部刷新。
5