APP下载

基于Android和SSH2的手机订餐系统

2016-11-22张国平褚龙现

电子设计工程 2016年15期
关键词:服务端订餐会员

张国平,黄 淼,褚龙现

(平顶山学院 软件学院,河南 平顶山 467000)

基于Android和SSH2的手机订餐系统

张国平,黄 淼,褚龙现

(平顶山学院 软件学院,河南 平顶山 467000)

为方便用户不受时间和空间的限制,便能快速订餐,本文采用Android和SSH2技术设计并开发一个网上订餐系统,该系统由手机客户端和后台服务器端两部分组成,手机客户端实现用户的注册登录、菜品信息查询、生成订单和订单信息查询等功能;后台服务器端实现了用户管理,用户订单查看与检索,购物车查看与检索,餐厅管理,菜品管理,餐厅订单查看与检索等功能。开发的系统能给餐厅卖家提供更多商机,同时也给顾客提供更多的便利。实验表明,该系统具有操作简便、扩展性强、加载速度快和占用资源少等优点,达到了设计要求。

Android;Strus2;Spring;Hibernate;网上订餐系统

随着网络技术与信息技术的快速发展,人们对餐饮的要求越来越高,不仅要求色香味俱全,而且对于就餐的时间和方式也有了更高的要求。传统的订餐管理系统大多是基于C/S模式开发,该开发模式具有用户不便于在网络订餐、维护工作量和成本大等缺点[1];目前已有的基于B/S模式的订餐系统,用户必须通过电脑进行订餐操作,由于电脑体积大且不便于携带,这样给用户随时随地的网上订餐带来了诸多不便。近年来,随着智能手机的不断普及和移动互联网技术的快速发展,手机成为了人们生活中不可缺少的工具,它已成为人们获取信息的主要设备,使得用户移动订餐成为了可能。

通过移动通信与Internet的结合,使得移动应用快速发展。移动应用业务为人们提供了随时随地访问网络并从网络获取信息和处理信息的能力。为了方便用户不受时间和空间的限制,直接利用智能手机移动设备,方便快捷浏览、订购感兴趣的菜品,本文提出采用Android和J2EE技术设计并开发一个手机订餐系统,即采用Android技术进行手机客户端的设计,采用J2EE技术(Struts、Spring、Hibernate)实现Web后台服务器端的开发。开发的系统具有较高的联网实时性,满足用户随时随地网上订餐的需求,大大节约了用户的时间,从而提高了用户的订餐效率。

1 Android和SSH2核心技术

Android系统平台包含有基于Linux内核的操作系统,虚拟机,中间件,一些 API接口以及一些必要的应用功能[2-3]。Android整体上可以看作是由Linux,C/C++和Java所构成的开源软件系统[4]。

SSH2是Sruts2+Spring+Hibernate的一个整合框架[5-6],是目前使用较多的一种Web应用程序开源框架,该开发模式能保证各层开发相对独立,又能协调工作,代码结构清晰,共享性高,且利于维护[7-8]。

2 系统总体设计

通过需求分析得出,系统的功能主要分为会员用户、餐厅用户和管理员用户3种用户角色,会员用户要能实现会员登录、会员注册、会员信息管理、餐厅浏览以及检索、订单管理、菜品浏览和检索等功能。餐厅用户要能实现菜品管理,餐厅登录、餐厅信息管理、餐厅订单查看和检索等功能。系统管理员要实现会员管理、会员订单查看与检索、购物车查看与检索、餐厅管理、菜品管理、餐厅订单查看与检索等功能。系统功能结构图如图1所示。

图1 系统功能结构图

3 系统关键类的设计

3.1 Android手机端包及类的设计

1)cn.edu.pdsu.bean:持久化类,所有的持久化类均在该包下,并info结尾命名。包下有8个持久化类,在这里进行对数据的操作等。

1.2.2 IBDV悬液的制备。选取经确诊典型的IBD病死鸡的法氏囊,经无菌生理盐水冲洗后称取2 kg并剪碎,按1∶3的量加入无菌生理盐水,然后进行匀浆处理,于4 ℃条件下放置1 min,经离心分离后提取上清液,加入青霉素和链霉素各3 000 IU/mL于上清液中,置于-30 ℃冰箱中冷冻保存,得到IBDV悬液。

2)cn.edu.pdsu.config:在这里存放的是进行网络请求的URL地址。

3)cn.edu.pdsu.customAdapter:Adapter类,系统中所有ListView所需的Adapter。

4)cn.edu.pdsu.refresh.view:自定义的view类,主要实现的上拉刷新与下拉刷新功能。

5)cn.edu.pdsu.slidingmenu:自定义的view类,主要实现的侧滑功能。

6)cn.edu.pdsu.util:存放一系列的工具包,比如校验码工具类,图片的上传与下载的工具包。

3.2 J2EE后台服务器端包及类的设计

1)cn.edu.pdsu.struts:包存放Action,负责服务端的执行以及Android端的接口实现。

2)cn.edu.pdsu.hibernate:存放session及数据底层持久化类。

3)cn.edu.pdsu.service:该包存放服务端业务逻辑类的接口,负责提供服务端所需要的业务逻辑操作接口。

4)cn.edu.pdsu.service.impl:该包存放实现业务逻辑接口的实现类,负责提供业务逻辑的具体实现。

5)cn.edu.pdsu.dao:存放Dao层接口文件。

6)cn.edu.pdsu.impl:存放实现Dao接口的实现类,负责提供数据库操作的具体实现。

4 核心模块的详细设计

4.1 手机客户端软件的设计

4.1.1 会员查看餐厅信息功能的实现

餐厅模块是展示给会员用户的第一个功能模块,通过请求相关API,返回最新的餐厅信息,并且加载展示给会员用户。通过上拉刷新与下拉刷新获取更多的餐厅信息,具体实现效果如图2所示。

图2 会员查看餐厅效果图

系统会读取记录中的10条记录。发送餐厅ID给服务端API接口,服务端通过判断,服务端数据库餐厅ID是否有大于提交的ID。如果有则用JSON数据形式返回所有的餐厅。如果没有返回0x20002,告诉手机端,无需更新。服务器端响应返回数据,解析JSON数据,保存为本地JAVA数据。然后通过Handler消息通信机制,告知UI主线程,加载新数据到显示页面。

4.1.2 手机语音功能的实现

手机语音功能模块使用iFLY Mobile Speech Platform 2.0讯飞移动语音平台的自动的语音的识别技术来实现。语音实现原理如图3所示,语音实现效果如图4所示。

图3 语音实现原理图

图4 语音模块效果图

4.1.3 手机餐厅登录功能的实现

登录模块界面分有帐号输入框,密码输入框以及登录按钮。密码输入框下面,还有一个记住密码标志,默认是打开状态,点击后,表示选中状态,表示记住当前密码。下次可直接进行登录。

使用手机号即可进行登录。通过向API提交帐号和密码,服务端进行验证,返回响应餐厅基本信息。如果帐号、密码其中一项有误,则都会进行相应的提示及返回值。客户端APP则会进行相应的判断。同时APP可以记住密码方便用户下次登录,如果开启了记住密码,在登录成功后,通过SharePreference存储记住密码的选项以及帐号密码和帐号返回信息。下次登录将直接返回用户信息无需二次登录,餐厅登录界面如图5所示。

图5 餐厅登录界面

4.2 J2EE后台服务器端软件的设计

4.2.1 API模块的实现

API模块分为 userAction、orderAction等相关类,通过http://211.69.26.230:8080/ordermeal/API模块/操作 格式的地址进行访问。如进行登录,通过访问地址http://lamboo.cn/ordermeal/UserActionlogin并 Post提交参数。在API的设计中,基于保密性需求,表单信息均采用POST提交。返回数据使用JSON字符串。

userAction提供了接口验证接口、自动注册接口以及头像上传接口等。orderAction提供了餐厅用户的使用的接口。

4.2.2 推送模块的实现

在对系统进行推送时,默认的需要使用极光云推送的后台进行消息的推送。极光推送为开发者提供了更加灵活的简单的推送服务,推送服务按照极光提供的端口规范。本系统在服务端后台的开发过程中,通过对极光云推送的API的调用,实现了推送功能,无需使用极光系统即可发布推送消息。

在发布推送中,通过POST提交相关数据以及参数到指定API地址来推送内容到客户端。需要提交推送类型,消息,推送以及富媒体,提交推送样式,根据不同的样式ID,弹出不同的消息通知栏弹出样式。以及提交推送的内容,请求等内容。并且会同时根据API返回值判断推送是否成功,如果成功则告诉管理员推送成功,否则提示失败。

在页面设计中,通过API查询全部的标签,并使用HTML的select标签,显示全部的标签,管理员可以通过选择全部或标签来推送给不同的群体。推送界面如图6所示。

图6 推送效果图

5 结论

为了方便用户不受空间和时间的限制实现网上的快速订餐,本文综合应用Struts2+Spring+Hibernate3大框架技术并结合Android技术设计并开发了一个手机订餐系统,开发的系统能方便用户随时随地实现餐厅菜品的订购。系统具有较高的联网实时性,开发的系统具有较高的联网实时性,满足用户随时随地网上订餐的需求,大大节约了用户的时间,从而提高了用户的订餐效率。

[1]张志德,李本富.移动云计算之android餐饮服务系统开发[J].科学技术与工程,2012(3):687-689.

[2]孟濬,朱天宇.一种基于智能手机的新移动医疗系统模式[J].计算机应用研究,2013(7):2055-2060.

[3]李慧,刘星桥.基于物联网Android平台的水产养殖远程监控系统[J].农业工程学报,2013(13):175-181.

[4]陈群,蔡桂煜.基于Android的智能家庭健康监控设备开发[J].三明学院学报,2015(4):16-22

[5]张国平,郑均辉.基于SSH2和Ajax的物联网社区信息化管理系统[J].现代电子技术,2014(14):71-73.

[6]李淑芳,胡克寒.基于SSH2框架的高校科研网络管理系统的实现[J].计算机应用与软件,2010(7)195-196.

[7]朱科峰,曹静.基于SSH2架构的农村信息服务系统的设计与实现[J].江苏农业学报,2013(4):885-891.

[8]何苗.基于SSH2框架与ExtJS技术的权限管理模块的设计与实现[J].电子设计工程,2013(13):44-46.

Mobile phone ordering system based on Android and SSH2

ZHANG Guo-ping,HUANG Miao,CHU Long-xian
(School of Software,Pingdingshan University,Pingdingshan 467000,China)

For the convenience that the users is not restricted to time and space to get the ordering information,this paper uses the technology based on Android and SSH2,designs and develops a Online ordering system.The system is consists of mobile phone client and server,The mobile client of the system can realize the functions of login for registered users,query for Food infromation,build for order and query for order information.The backstage server can realize the functions of user management,user orders and search,shopping cart view and search,restaurant management,food management restaurant orders and serach.The system can realize the more business opportunities for the restaurant seller,and at the same time to provide more convenience for customers.Experimental results show that the system has the advantages of simple operation,strong portability,fast loading speed and less resource-intensive,and thus reaching the design requirements.

Android;Struts2;Spring;Hibernate;online ordering system

TN929.5

A

1674-6236(2016)15-0049-03

2015-10-25 稿件编号:201510172

河南省科技厅科技发展计划项目(132102310516);平顶山学院青年科研基金项目(PDSU-QNJJ-2013010)

张国平(1980—),男,江西南昌人,硕士研究生,讲师。研究方向:软件工程,嵌入式与软件开发,移动通信应用。

猜你喜欢

服务端订餐会员
会员之窗
会员之窗
会员之窗
会员之窗
新时期《移动Web服务端开发》课程教学改革的研究
在Windows Server 2008上创建应用
动车订餐
摸清黑客套路防范木马侵入