餐饮业已经十分成熟,如IBM公司的POS产品已获得较大范围的应用。2004年在美国100家最有效利用信息技术企业中,美国最大的食品和多种服务公司ARAGroup Ine,名列第四。目前它利用主要的信息系统使其部门经理有更多的时间面向顾客。
网上订餐中多功能性的服务还可以让消费者从容的网上浏览餐馆的菜单,或进行价格上的比价,来选择所需要的美食佳肴。目前,通过上网提供外卖和送餐服务的餐厅多于独立经营者,外卖与送餐服务占餐饮生意额的一半以上。美国餐饮消费者越来越趋向于使用网上订餐的形式来购买外卖,特别是年轻一族的消费者。显而易见,网上订餐将成为餐饮业扩大生意的金矿源,有眼光的餐饮业业主应该尽早考虑如何利用英特网上网销售。
目前网上订餐业务在我国只是处于形成期,从网站数量来看,并不很多,专门从事网上订餐业务的网站凤毛麟角,较大的有易合饭(http://www.ehefan.com/)订餐网、中国快餐网(http://www.kclm.org/)等。一些较大的星级酒店虽然设立网站开展网上订餐业务,但以网上订房业务为主。至于一些中小餐饮企业则未涉足网上业务,而且有些餐馆虽然上了网,但网上订餐业务也从未开展。另外,从网上订餐企业的业绩看,并不理想。在我的印象中好像也没有几家运用网上订餐而业务火爆的企业。据了解,目前北京市最早开展网上订餐服务的一家快餐店的送餐范围已经扩到了5环以内,而且1份起送,就是这样目前公司的经营状况也不太理想。
由于互联网发展已深入家庭,网上订餐这个课题已经提出,为了方便人们生活,提高人们的生活效率,该类统根据现实订餐的方式虚拟于网络之上,使人们通过网络就可以完成生活中必要的事情(饮食)。系统的完成不仅可以基本实现客户订餐的功能,还能在此基础上提供更多的,更贴心的服务。信息技术的发展将更快的推动互联网的发展,订餐系统的重要性也将越显其强大的作用。
2
第二章 系统开发平台
2.1开发工具介绍
经过比较,以及自己所掌握的知识所限,最终决定采用在Windows 下使用JSP+MYSQL开发,采用B/S结构,使用JDBC连接数据库。这样选择的优势以及特点有:
(1)用JSP+MYSQL灵活方便,可扩充性、可移植性较好。
二、JDBC与MYSQL同为微软开发,兼容性好,同时存取效率高,且较成熟,目前许多数据库应用系统都采用这种方式。JDBC是Microsoft主要数据存储技术,JDBC主要让应用程序或WEB应用程序存取各种不同的数据源。JDBC封装了OLE-DB复杂的接口,以极为简单的COM接口存储数据,简化了程序员数据存取的工作。
三、采用 B/S结构是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。
用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
JSP技术的强势:
一、一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
二、系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署, 在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。
三、强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到
3
由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力【4】。 四、多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2.2主要开发技术介绍
2.2.1 JavaEE平台
JavaEE 是 J2EE的一个新的名称,之所以改名,目的还是让大家清楚J2EE只是Java企业应用.随着WEB和EJB容器概念诞生,使得软件应用业开始担心SUN的伙伴们是否还在Java平台上不断推出翻新的标准框架,致使软件应用业的业务核心组件架构无所适从,从一直以来是否需要EJB的讨论声中说明了这种彷徨。
在2004年底中国软件技术大会Ioc微容器(也就是Jdon框架的实现原理)演讲中指出:我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本.此次J2EE改名为Java EE,实际也反映出业界这种共同心声。
JavaEE的核心是EJB3.0, 其提供了更兼便捷的企业级的应用框架。
图2-1 JavaEE核心框架图
4
J2EE容易让初学者误解是独立于一套Java的技术方案。
从更深层次来看,Java诞生十年来,很多近十年前的业务组件至今还可以使用,软件应用不再由于语言的更迭革命带来毁灭的打击了。
功能和规定 架构图
让我们看看Java EE 5有哪些新的功能或规定,我们可以从SUN网站下载Java EE 5规范。其架构图如下:
图2-2 JavaEE架构图
图中灰色加黑部分是Java EE 5新的功能,我们看到,在WEB层主要加入了JSF这个新的表现层框架,和我们日常开发关系密切的是,引入了新的Java Persistence标准,这个标准正在由EJB 3.0专家组制定。
2.2.2 SSH技术介绍
SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前
5
较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。S S H最初是U N I X系统上的一个程序,后来又迅速扩展到其他操作平台。S S H在正确使用时可弥补网络中的漏洞。S S H客户端适用于多种平台。几乎所有U N I X平台—包括H P - U X、L i n u x、A I X、S o l a r i s、Digital UNIX、I r i x,以及其他平台—都可运行S S H。
SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。
服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。
客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
他们的工作机制大致是本地的客户端发送一个连接请求到远程的服务端,服务端检查申请的包和IP地址再发送密钥给SSH的客户端,本地再将密钥发回给服务端,自此连接建立。SSH 1.x和SSH 2.x在连接协议上有一些差异。 一旦建立一个安全传输层连接,客户机就发送一个服务请求。当用户认证完成之后,会发送第二个服务请求。这样就允许新定义的协议可以与上述协议共存。连接协议提供了用途广泛的各种通道,有标准的方法用于建立安全交互式会话外壳和转发(“隧道技术”)专有 TCP/IP 端口和 X11 连接。
SSH被设计成为工作于自己的基础之上而不利用超级服务器(inetd),虽然可以通过inetd上的tcpd来运行SSH进程,但是这完全没有必要。启动SSH服务器后,sshd运行起来并在默认的22端口进行监听(你可以用 # ps -waux | grep sshd 来查看sshd是否已经被正确的运行了)如果不是通过inetd启动的SSH,那么SSH就将一直等待连接请求。当请求到来的时候SSH守护进程会产生一个子进程,该子进程进行这次的连接处理。
6