通信网络:Internet网
2.3开发模式的选择
此次有两种开发模式分别为JSP+JavaBeans和JSF+EJB+JPA,在模式一中,JSP页面独自响应请求并将处理结果返回客户,所有数据都是同过Bean来处理JSP实现页面的变化,如此一来,就有一个很严重的问题,那就是如果需要处理的商业逻辑比较复杂时,我们需要嵌入大量的的脚本语言或者java代码,如此多的代码是不可想象的,而且对于资源的浪费也是十分严重。所以对于大型的项目而言,模式一是不可取的,由此模式二诞生。
模式二采用JSF+EJB+JPA这种方式。JSF为表现成提供丰富的组件,这些组件可以直接绑定在服务器端的后台bean的属性字段,JSF是JAVA阵营中与微软的ASP抗衡的一把利剑。EJB提供了本地端口和远程端口,也就意味着EJB的实现可在本地上也可在远程服务器上,调用方可以直接从远程服务器上调用EJB,另外由于EJB接口与实现的分离时的它2可以更好地对功能进行扩展。JPA封装了数据库的一切操作,提供了实体与数据库表的映射关系,另外本身也支持数据源,为数据库操作提供了更好的性能。模式二中,JSF作为表现层提供用户界面,EJB作为服务层,由JSF中的后台bean调用提供服务,JPA作为仓仓储层,封装有关数据库的一切操作,由EJB调用完成特定的功能。三者职责分离耦合性大大降低,若其中一层发生变化,其他层的变化程度会很小。
从扩展性和主流性而言,我们以第二种开发模式为主,即JSF+EJB+JPA的开发模式。
2.4系统数据库连接
JDBC技术是Java DataBase Connectivity的缩写,他是SUN公司提供的一种支持基本SQL功能的通用的应用程序接口(Application Programming Interface)。它是有一组用JAVA语言编写的类和接口组成。通过这些接口和类,程序员可以在JAVA语言中轻松地和数据库建立连接,可以用简单的SQL执行语句来对数据库进行不同的访问。也就是说用java语言编写的程序可以在任何支持java的平台上运行,简单的说jdbc能实现的功能如下:
1.和一个数据库建立连接; 2.处理数据库返回的结果
用户对数据库的存取权限认证时中间完成的,对数据库的查询,插入,更新和删除操作等都封装在中间,位于服务器端。数据库进行操作后,再将处理结果通过Web服务器返回到浏览器端用户。这样,在用户端输入的用户名和密码,可以通过加密算法进行加密后在网络上传输,在中间件中进行解密认证,然后再进行数据库的存取操作,数据库存取权限的用户名和密码出现在位于服务器端的中间件中,这样就更加安全。本系统采用的正是这样的三层结构的数据库访问模式。
第三章 系统概述
3.1 系统的可行性分析
可行性是指,在当前情况下,设计开发这个系统是否有必要,是否具备必要的条件,它包括必要性还有合理性。
3.1.1 技术可行性
1.硬件,软件
硬件方面:一般配置的计算机即可。 软件方面:Microsoft SQL Server 2000 ,java,MyEclipse
2.Jsp技术
利用JSP+JavaBeans技术进行开发。 3.维护操作
工作方便,后台人员可以轻松地学会操作方式,功能完整。
3.1.2 运行可行性
随着科技的高速发展,人们对于网络的依赖性日益增强,使得网上订餐系统的运行可行性大大增加。人们对此变现出巨大的热情。使其拥有巨大的发展前途。
3.1.3 经济可行性
随着经济的发展,人们对于享受的追求越来越高,要求也是越来越高,网上订餐系统的成本比较低,在此低成本的基础上却是拥有的无与伦比的方便快捷。这是一种全新的商务模式,对于现有的市场而言,能够产生巨大的冲击力。
3.2 系统的需求分析
需求分析指的根据我们所要设计的系统,我们在该系统的的应用范围内,对客户的需求进行分析。需求分析是我们在系统设计之前进行的,本系统主要是用户的购买需求还有就是管理者的需求。
3.2.1 用户需求分析
作为一个网上订餐系统,顾客进入网站应该能够迅速的看到自己所关心的信息。需求如下:
1)用户注册 每个用户可以在网站上注册自己的账号
2)用户登录 注册账号之后,用户登录进行浏览
3)菜单浏览(配合图片) 顾客以点击网页上的菜品图片,对此进行更加深入的了解,一次决定是否购买。
4)网上预定 顾客在网上选定好菜单后可以进行预定。
3.2.2 性能需求分析
1)操作简单,页面设计吸引眼球。 2)网页信息快速可靠。 3)系统运行快速,有效率。
4)结构上具有可扩展性,以便商家将来扩展。
3.3 总体设计原则
对于整体而言,我们做出来的系统,首先我们需要给客户展示一个看起来十分舒适的页面,网页上的各个内容页十分符合顾客的需求,网页上的内容可以得到及时的更新,给客户一个十分安全的预定以及支付的环境。对于商家而言,我们的后台设计需要到方便,前台的收银人员可以轻松地学会操作的方法,老板可以直观的了解店铺的销售状况以便及时对店铺的销售方案作出调整。
第四章 系统总体设计
4.1 系统流程分析
4.1.1 业务流程分析
1.浏览与选择餐饮信息:顾客进入网站即可自行浏览,选择自己喜欢的菜肴进行选定。
2.判断:顾客确定所购餐饮信息后,系统将自动判断该顾客是否已经注册,若是,则直接填写订单,否则,提示顾客先行注册。
3.提交订单:顾客核对自己所下的订单,确定后提交。 4.注册:顾客在网站上注册账户。
5.确认:后台管理人员将实时得到顾客的注册信息,对一些关键性信息通过电话进行确认,如若无误则可通过审核。
6.付款:每一份订单的数据都将实时传入后台数据库.
4.1.2 数据流程分析
该系统数据流程比较简单,管理员可以从后台登陆,添加菜单信息,删除某些已经过时的菜单,查询现有的菜单,修改某一菜品的具体信息,更新首页的最新资讯等等,然而这些信息都是顾客可以浏览的,但是
顾客没有权限对此进行,添加,删除,修改等操作。对于预定信息而言,管理员可以查看以及审核信息,顾客可以对自己的预定信息进行修改,如:增加,删除,修改等操作,确认订单后交由管理员审核。
4.2 网络订餐系统功能模块划分
根据需求分析与设计目标,结合实际情况,本系统的功能模块如下: 1.主页:在这里我们可以看见本系统的主要功能和信息。
2.菜品浏览:顾客登陆网页后,可以分页浏览菜品,并将想要的菜品提交到填写订单的页面上。
3.订购菜品:顾客可以将自己所需要预定的菜品填写提交,进行订购。 4.商城公告:餐馆动态和特别推荐。
5.管理员:查看顾客订单信息,更新网页动态,添加删除修改菜单。
4.3 系统数据库设计
数据库的需求分析主要是数据库和数据库表的建立。该系统中需要存储哪些