基于android平台的手机网上订餐系统的研究与实现_第1页
基于android平台的手机网上订餐系统的研究与实现_第2页
基于android平台的手机网上订餐系统的研究与实现_第3页
基于android平台的手机网上订餐系统的研究与实现_第4页
基于android平台的手机网上订餐系统的研究与实现_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、. . . . 基于Android平台的手机网上订餐系统的研究与实现毕业论文中文摘要基于Android平台的手机网上订餐系统的研究与实现摘要: ANDROID手机网上点餐系统是基于ANDROID手机的一款网络应用软件,目的在于为注册用户和餐馆提供极大的便利。应用此软件,用户可以轻松便捷地实现自己的点菜要求。此系统基于C/S结构,采用PHP和MYSQL编程来实现对数据的存储和操作。手机客户端主要应用ANDROID开发技术,使用ACTIVITY组件,并遵照MVC模式进行开发。网络数据交互则遵照 协议来实现与服务器端的通信。本文第一章引言部分对整个系统和开发的背景作了简要的分析。第二章简要介绍开发环

2、境与开发工具与相关技术。第三章是系统的需求分析和数据库的设计,客户端程序的整体结构与Web Service服务的设计。第四章是主体功能的编码实现,介绍本系统各个功能模块的具体实现。最后则是对开发过程的总结。关键词: Android Json数据 Client SOAP协议 Web Service服务29 / 291 绪论何谓“网上订餐”?简言之,就是由担任消费者与餐饮商家之间的“媒介”,消费者直接通过网络来预订餐厅座位或房间。订餐者根据菜系、位置、价位等找到中意的餐馆酒店后,只需鼠标点击并输入就餐时间、人数等信息即可,订餐网会在完成预订后通过或短信告知预订情况。网上订餐不仅对消费者完全免费,还

3、可提供不同程度的折扣,使人们在没有就餐烦恼的情况下享受物美价廉的可口饭菜。1.1 研究背景随着计算机、互联网和移动终端与其应用的快速发展,不断的改变着人们的工作方式、交流方式、学习方式以与生活的各个方面,尤其是电子商务的突飞猛进正使人们的购物方式、支付方式发生着翻天覆地的变化。如今快节奏的生活方式让人们困扰不已,而就餐与交通问题首当其冲。餐厅太过拥挤、客流高峰期就餐困难、点餐等待等问题层出不穷。如果能有一个为广大民众所接受的系统应用解决这些问题,对于解决生活中的困扰与提升人们的生活质量都有极大的帮助。1.2 目前形势国也有不少网上订餐的服务形式,其中包括线上订购、在线支付等等。其实,想法都很不

4、错,但想实现网上订购,这些网上订餐的形式应该很难,个中原因主要就是餐饮行业普遍存在的信息化意识薄弱,这让网上订餐成为实在的瓶颈,短时期这是很难突破的,这也是为什么现在真正能实现网上订餐、并能被广泛接纳的网上订餐行为,依然离不开直接订购的主要原因。据不完全统计,2008年新上线订餐类近千家,大多数集中在经济较发达的大都市和一级城市,如、等。 网上订餐,想真正实现“网上订,网上付”的正规化,还需要很长的一段时日。1.3 选题方向与意义据了解,目前国较为成熟的、成体系的餐饮预定类为数不多,“行业巨头”主要集中在京、沪、粤三地请客800、饭统网雄踞京城;订餐小秘书、大众点评网坐镇滩、八界网独守羊城。处

5、于餐饮产业链中的新生产业网络订餐业,正受到越来越多投资人的偏爱。记者调查发现,当下众多此类,如大众点评网、订餐小秘书、紫页114、请客800等,都有一个共同的盈利模式,即通过互联网帮客人订餐、提供一定的折扣,从而获得店方给予的返点,这样的运营模式实际就是餐饮行业的携程网。这些不仅可以给网民提供海量的餐厅信息、交流美食心得的平台,而且可以给订餐者实实在在的折扣。2 开发环境与相关技术简介2.1 开发环境简介本系统是基于Android平台的网上订餐系统,因此Android平台是首要搭建的平台,鉴于目前主流的Android系统基本上都在Android2.1版本以上,因此就选择Android SDK

6、2.1版本作为开发本系统Android手机客户端的基础。此外,本系统使用Apache+PHP+MySQL作为Web端的开发基础。下面就是本系统开发所需的各种软件的名称与版本等级。1、JDK 1.6与其以上版本。该版本为较高的版本,具有很多低版本所不具备的新特性。2、Web应用服务器,Apache 2.2.6版本。3、数据库,MySQL5.1与其以上版本。MySQL功能强大且安装方便,并且支持事物后更增添了数据的完整性与安全性。4、开发环境,Eclipse JavaEE IDE for Web Developers 3.5 与其以上版本,该版本支持EE系统的开发。5、Android SDK 2.

7、1与其Eclipse 开发插件ADT。2.2 Web Service技术简介Web Service平台需要一套协议来实现分布式应用程序的创建。任何平台都有它的数据表示方法和类型系统。要实现互操作性,Web Service平台必须提供一套标准的类型系统,用于沟通不同平台、编程语言和组件模型中的不同类型系统。目前这些协议有:XML和XSD、SOAP、WSDL、UDDI与调用RPC与消息传递。而本系统所用的协议则是:SOAP和WSDL。SOAP即简单对象访问协议(Simple Object Access Protocal),它是用于交换XML编码信息的轻量级协议。它有三个主要方面:XML-envel

8、ope为描述信息容和如何处理容定义了框架,将程序对象编码成为XML对象的规则,执行远程过程调用(RPC)的约定。SOAP可以运行在任何其他传输协议上。例如,你可以使用 SMTP,即因特网电子协议来传递SOAP消息,这可是很有诱惑力的。在传输层之间的头是不同的,但XML有效负载保持一样。Web Service打破了软件应用、和各种设备之间的格格不入的状态,实现“基于Web无缝集成”的目标。WSDL就是用机器能阅读的方式提供的一个正式描述文档而基于XML的语言,用于描述Web Service与其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。3 系统功能设计与

9、概述3.1 系统开发背景随着计算机技术的发展,越来越多的人依赖计算机。而智能手机的诞生与其相关应用的发展、电信技术的进步,又为移动终端与其应用的普与提供了可能。Google公司2005年推出的Google地图,2008年推出的第一款Android智能手机,极促进了手机应用的大发展。本系统将主要基于Google Map与Android应用软件来实现一个美食订购、分享的平台,通过Web端以与Android手机端的实现使用户可以实时与他人分享自己喜欢的美食,并且可以通过Google Map精确快速的找到饭店所在的位置。3.2 功能概述现在对该系统的基本功能进行简单介绍。1、Web会员端:用户可以通过

10、注册模块注册会员账号,通过登录系统实现美食信息的查询、收藏和分享,实现美食的订购,管理个人信息。2、Web商户端:商户也可以通过注册模块注册成为系统商户,商户被审核通过后即可登录系统设置餐厅信息,包括利用google地图上传餐厅具体的经纬度;管理餐厅所提供的美食信息,包括添加、删除、修改;查询和管理会员订单,包括是否接受订单、所订餐品是否发出等。3、Web管理端当管理员登陆系统后,可以对整个系统进行管理,包括审核商户、文章、广告信息;添加、修改和删除美食种类与美食信息;改变站长推荐、今日特价等信息;对数据库进行维护。4、Android客户端会员除了通过电脑访问该系统之外,还可以通过在手机中安装

11、相应的程序来访问该系统。在手机端,用户同样可以注册成为会员或登录系统,登陆成功后可以查看美食信息、搜索美食信息、上传美食信息、查询个人信息、查看个人的订单、与个人收藏的美食信息。3.3 MySQL数据库设计本系统中的信息表主要有11数据表:文章表、会员信息表、商户信息表、美食种类表、餐品信息表、餐厅信息表、评论表、广告表、订单表、订单详情表、用户推荐美食信息表(详见附录一)。3.4 Android客户端的设计本系统的Android客户端是基于Android 2.1 开发出来的,下面是对Android应用程序的构成进行介绍。先看项目的目录结构(如下图一):(图1)在该程序中,包含如下一些主要的文

12、件,接下来就详细解释一下。1、src目录 src目录中存放的是该项目的源代码,其部结构会根据用户所声明的包自行组织,例如本系统中所用的三个基本包,它们包含了程序所用到的Activity和各种类与各种方法。2、gen目录该目录下的文件是ADT自动生成的,并不需要人为地修改。它就是项目的字典,项目中用户界面、字符串、图片、声音等资源都会在该类中创建它们唯一的ID,当项目中使用这些资源时,会通过该类得到资源的引用。3、Android 2.1该目录中存放的是该项目支持的JAR包,同时还包含项目打包时需要的META-INF目录。4、res目录该目录用于存放应用城中经常使用的资源文件,包括图片、声音布局文

13、件与参数描述文件等,包括多个目录,以drawable开头的三个文件是用来保存不同格式的图片的资源。Layout文件夹则是存放所有的布局文件的。Values是用来存放程序所用到的字符串、颜色与样式描述文件的。5、AndroidManifest.xml文件该文件时应用程序的系统控制文件,是应用程序的全局性描述文件,让外界知道该应用程序包含哪些组件、资源、何时运行与应用程序自身应该拥有的权限的声明。例如,本程序应用到的权限有:<uses-permission android:name="android.permission.INTERNET"/><uses-pe

14、rmission android:name="android.permission.ACCESS_FINE_LOCATION"/><uses-permission android:name="android.permission.CAMERA"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />第一个是访问网络的权限,第二个是精确定位的权限,第三个是应用照相权限,第四个是往存储卡中写入数据的权限。3.5

15、 Web Service服务端的设计Android应用通常都是运行在手机平台上,手机系统的硬件资源是有限的,不管是存储能力还是计算能力都很有限,在Android系统上开发、运行一些单用户、小型应用还是可能的,但是对于需要进行大量的数据处理、复杂计算的应用,还是只能不是爱远程服务器上,而Android应用将只是充当这些应用的客户端。Web Service用于消除不同平台、不同语言之间的差异,将现有的应用程序发布成开放式的服务,从而允许互联网上任何地方、任何平台、任何语言的应用程序可以向全世界发布信息或提供某种服务。本系统采用SOAP(Simple Object Access Protocol,简

16、单对象访问协议),它是一种具有扩展性的XML消息协议。SOAP是一个应用程序向另一个应用程序发送XML消息。SOAP消息是从SOAP发送者传至SOAP接受者的单路消息,任何应用程序均可作为发送者或者接受者。SOAP仅定义消息结构和消息处理的协议,与底层的传输协议独立。因此,SOAP协议能通过 ,JMS或者SMTP协议传输。使用PHP做服务端,要用Android去访问,用JSON和XML提供返回的数据,而Android端则可以用Apache的 Client去访问。JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standa

17、rd ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C+, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 Client 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 协议的客户端编程工具包,并且它支持 协议最新的版本和建议。本项目的Android客户端就是利用这个组件进行Web服务请求的。4 系统实

18、现与功能实例4.1 Web会员端主要功能实现与示例4.1.1 注册、登陆验证功能的实现当进入首页时,会发现右侧的登陆标签,若你是会员,请点击登陆,就会跳转至登陆页面;若你不是会员,也点击登录。因为登陆页面注册按钮,用户就可以进入注册页面。在注册或登录的过程中,页面会提示不同程度的提示信息,比如登录或注册成功并自动跳转页面,会提示你的用户名或密码输入不正确等。4.1.2 查询美食信息(包括餐厅地图信息)(图2)(图3)当用户在浏览美食信息时,点击进入餐厅查询餐厅所有美食信息,用户在餐厅详细信息页面可以看到美食的详细信息,包括美食信息与美食所在餐厅的位置信息,为用户提供全面细致的餐厅与美食信息。实

19、现过程:var geocoder; var map; var markersArray = ; function initialize(lat,lng) geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(lat,lng); var myOptions = zoom: 13, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP map = new google.maps.Map(document.getElementById("

20、;map_canvas"), myOptions);addMarker(latlng); addMarker(event.latLng); ); 4.1.3 购买、收藏美食功能的实现(图4) (图5)用户如果要点餐,那就必须进入美食的详细信息页面(如图4),这样就可以进行点餐和收藏了。用户只要点击订购按钮,就可以把美食添加进菜单,而且用户还可以改变订购的数量,为用户添加了便利(如图5)。(图6) (图7)用户在订购结束后即可进行结算,点击购物车页面的结算按钮,即可进入填写订单详细信息页面(如图6),在确认订单详细信息后,用户即可提交订单(如图7),完成订餐过程。4.2 Web商户端功

21、能实现与实例4.2.1 注册、登陆验证功能的实现当商户进入首页时,会发现底部有商务合作与餐厅管理两个标签,若你不是已注册商户,点击商务合作就会跳转至注册页面;若你已是注册商户,点击餐厅管理。商户在注册后会在经过管理员的审核之后才会通过;在登录的过程中,页面会提示不同程度的提示信息,比如登录或注册成功并自动跳转页面,会提示你的用户名或密码输入不正确等。4.2.2 管理餐厅信息(上传、修改、删除)功能的实现(图8) (图9)当商户已经过审核可以登录至商户管理页面时(如图8),商家可以选择修改餐厅信息页面上传餐厅信息(如图9),系统设置当前的区域为火车站附近的区域。这里可以通过Google地图获取商

22、家餐厅的具体位置(精确的经纬度)并在确认上传之后上传至数据库。获取地图并添加位置数组的map.js代码如下所示:var geocoder; var map; var markersArray = ; function initialize() geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(38.86300,115.48003);/这里就是页面当前显示的地理位置的具体经纬度。 var myOptions = zoom: 13, center: latlng, mapTypeId: google

23、.maps.MapTypeId.ROADMAP map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);google.maps.event.addListener(map, 'click', function(event) addMarker(event.latLng); ); function addMarker(location) <!-增加标记-!> var clickedLocation = new google.maps.LatLng(loc

24、ation); var marker = new google.maps.Marker( position: location, map: map );document.getElementById("show_x").value = location.lat();<!-获得标记的经度幷显示在文本框中-!>document.getElementById("show_y").value = location.lng();<!-获得标记的纬度幷显示在文本框中-!>map.setCenter(location); markersArra

25、y.push(marker);4.3 Android手机端功能实现与实例4.3.1 登陆与验证功能的实现(图10) (图11)当用户安装Android客户端后即可运行。首先进入的是欢迎界面,然后会自动跳转进入登录界面。这里用户可以登录或注册,这里就点击登录按钮,如果你输入的用户名和密码不一致,系统就会提示你重新输入(如图10)。当你输入正确的用户名和密码后,系统就会自动跳转进入系统的主界面(如图11)。关键代码如下所示: Post Post = new Post(url); Client client = new Default Client(); StringBuilder str = ne

26、w StringBuilder();/获取用户名文本框容String editUid = uid.getText().toString();/获取密码框容String editPwd = pwd.getText().toString(); ArrayList<NameValuePair> params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair("username",editUid); params.add(new BasicNameValuePair(&qu

27、ot;password",editPwd); BufferedReader buffer = null;try Post.setEntity(new UrlEncodedFormEntity(params, .UTF_8); Response Res = client.execute( Post);if( Res.getStatusLine().getStatusCode() = 200) buffer = new BufferedReader(new InputStreamReader( Res.getEntity().getContent();for(String s = buf

28、fer.readLine();s != null; s = buffer.readLine() str.append(s); /String out = EntityUtils.toString( Res.getEntity().getContent();"UTF_8");/StringBuilder sb = new StringBuilder(); Log.i(Tag,str.toString(); buffer.close(); JSONObject json = new JSONObject(str.toString(); String title = json.g

29、etString("title"); Log.i(Tag,title);int id = json.getInt("id");if(id = 1)Toast.makeText(this, id + title ,Toast.LENGTH_SHORT).show();/跳转到主页面Intent intent = new Intent();intent.setClass(FanyouClient.this,MainActivity.class);Bundle bundle = new Bundle();bundle.putString("actio

30、n","register");intent.putExtras(bundle);startActivity(intent);FanyouClient.this.finish();elseToast.makeText(this,"对不起,请重新输入用户名或密码" ,Toast.LENGTH_SHORT).show();4.3.2 订购美食功能的实现(图12) (图13)用户在进入系统主界面后,可以看到几个主要按钮,如果想要订餐,可以进入餐厅(如图12所示),这样就可以如同web端一样浏览餐厅信息,在选择某个餐厅后,就可以看到餐厅所有的美食信息,在

31、浏览餐品详细信息时,用户就可以进行购买和收藏等操作了(如图13所示)。关键代码如下所示:JSONArray jsonArray = new JSONArray(builder.toString();for(int i = 0;i<jsonArray.length();i+) JSONObject jsonObject2 = jsonArray.getJSONObject(i);String id = jsonObject2.getString("bid");String restaurant = jsonObject2.getString("restaura

32、nt");String addr = jsonObject2.getString("address");Restaurant restInfo = new Restaurant();restInfo.setBid(id);restInfo.setRest(restaurant);restInfo.setAddress(addr);map = new HashMap<String,String>();map.put("bid",id);map.put("restaurant",restaurant);map.put

33、("address",addr);list.add(map);ComendData.restaurant.add(restInfo); ListView lv = (ListView) findViewById(R.id.searchResultListView); SimpleAdapter mSchedule = new SimpleAdapter(this, /没什么解释 list,/数据来源 R.layout.my_listitem,/ListItem的XML实现 /动态数组与ListItem对应的子项 new String "address",

34、 "restaurant", /ListItem的XML文件里面的两个TextView ID newint R.id.ItemTitle,R.id.ItemText); /添加并且显示 lv.setAdapter(mSchedule);4.3.3 美食推荐功能的实现(图14)本系统另外的一个功能就是为用户提供了一个可以和网友分享美食信息的平台,用户在平时日常生活中遇到了比较美味的食品,可以通过客户端的上传美食功能来实现与网友分享。4.4 Web Service服务器的设计与实现该部分功能主要包括业务接受页面和业务处理页面。业务接受页面是由php构成的。它接受Android客

35、户端传过来的请求,但是它不能单独运行,必须通过请求业务处理页面中的相关服务,经过处理之后,得到业务处理的结果,经过判断之后,通过JSON数组再次将结果返回给Android客户端,让客户端进行下一个步骤。业务处理页面只有一个,就是提供了基于SOAP协议的Web Service服务的 service.php页面。在这个页面里,客户端所有的请求都会经过它的处理,并通过返回处理结果将处理结果告诉业务接受页面。下面就以客户端发送登录验证请求为例,介绍整个系统的运行:首先Android客户端创建登录验证的请求,代码如下所示:String url = "/fanyou/servic

36、es/client_login.php" Post Post = new Post(url); Client client = new Default Client();StringBuilder str = new StringBuilder();/获取用户名文本框容String editUid = uid.getText().toString();/获取密码框容String editPwd = pwd.getText().toString();ArrayList<NameValuePair> params = new ArrayList<NameValuePai

37、r>();params.add(new BasicNameValuePair("username",editUid);params.add(new BasicNameValuePair("password",editPwd);BufferedReader buffer = null; Post.setEntity(new UrlEncodedFormEntity(params, .UTF_8);这里就是客户端将登录请求的信息发送至服务端的业务请求页面,信息的容包括用户名和密码。然后就是服务器接收请求页面将请求信息发送至服务器业务处理页面进行处理的示

38、例并得到处理结果再将结果传回到客户端,代码如下所示:<?phpheader("Content-Type: text/html; charset=UTF-8");require_once("./lib/nusoap.php");$client = new soapclient('/fanyou/services/service.php?wsdl',true);$username = $_POST'username'$password = $_POST'password'$paramet

39、ers=array($username,$password);$str=$client->call('check_login',$parameters);if (!$err=$client->getError() /得到服务处理的结果$array = array( 'title'=>urlencode('恭喜您,登陆成功!'), 'id'=>1);echo urldecode(json_encode($array);/将结果封装成JSON数组传回客户端/header("location:local

40、host/fanyou/index.php"); else $array = array( 'title'=>urlencode('登录失败'), 'id'=>0);echo urldecode(json_encode($array);?>最后就是服务器处理功能的实现,搭建过程、处理过程如下所示:第一步:服务器的搭建:<?phprequire_once("./lib/nusoap.php");require_once("./config/config.php"); /打开数

41、据库连接 $db = new opmysql();$ _RAW_POST_DATA=isset($ _RAW_POST_DATA)?$ _RAW_POST_DATA : ''$soap->service($ _RAW_POST_DATA);?>第二步:服务的发布 这时,服务器并没有提供任何服务,因为并没有任何服务被发布。下面就发布一个检查Android客户端登陆的服务,代码如下所示:function check_login($username,$password) require_once("./config/config.php"); /打开数

42、据库连接$db = new opmysql();$sql = "select * from tb_user where username='$username' and password='$password'" /查询所有数据$result = $db->uidRst($sql);$user = mysql_fetch_array($result);if ($user'username' = $username && $user'password' = $password)return

43、"Login"elsereturnnewsoap_fault('client','','concatenateYONGHUMINGCUOWU ');mysql_close ( $con );第三步:注册服务并返回参数定义:通过这个方法,我们就发布了一个服务项目了,但是仅仅有发布是不够的,还需要在在服务器上进行注册并且返回各个参数的定义,注册方法与返回参数的方法(就以上面这个微粒)如下所示:$soap->register('check_login',array("username"=&g

44、t;"xsd:string","password"=>"xsd:string"), array("return"=>"xsd:string"); / 返回参数的定义这样就完成了处理Android客户端请求的整个过程。整系统所用到的服务不仅仅是这一个,还有其他的比如,用户注册(client_register)、美食上传(client_upload)等,它们共同构成了整个系统的服务端,为所有请求业务的Android客户端提供各种服务请求。结 论经过几个月对本系统的制作,我学到了很多知识。

45、刚开始我对所做的东西无从下手,通过几周的时间的对系统所要的技术学习和老师的耐心指导,我开始对要做的系统有点概念了,而且越做越有兴趣。现在对本系统制作的过程和它所用到的技术的应用已很熟悉。在这次的研究过程中,由于需要学习的东西很多,所以不是轻而易举就可以完成的。在这次课题的研究中我花费了相当大的时间与精力。不过这是第一次制作这样一个完整的系统,相信仍有不足之处。这次的设计过程严格按照软件工程的软件设计步骤进行的。从需求分析,到功能模块设计,再到数据库的设计,最后进行系统模块的详细设计与具体实施,整个过程比较细致。但由于我经验不足,而且能力有限,所以在功能实现方面还不够完善,同时也有许多细节问题没

46、有考虑周全。虽然这次研究课题的多数功能已经实现,系统制作已经完成,但是研究成果仍显粗糙,没有很好体现所用技术的优点,不过我想这些在今后的学习中会不断改进的。在个人看来,这个课题本身并不难,而我们之所以为它付出了这么多的精力是因为我们不会的东西还太多,所以在以后的研究中还需要进一步的学习,这样才能在今后的研究中做得更出色。参 考 文 献1 凯华 凯华编著PHP开发(典型模块大全):人民邮电2011.2 吴亚峰 索依娜Android核心技术与实例详解:电子工业2011.3 刚.疯狂Android讲义.:电子工业.20114 昱勋 名杰等编著.Google Android SDK 开发例大全(第一版

47、).:人民邮电.20115 孝祥著 java就业培训教程M:清华大学,2007.6 余志龙编著Google Android SDK开发例大全M:人民邮电,2009-7-1.7 E2ECloud工作室著深入浅出Google AndroidM:人民邮电,2009-08-1.8 靳岩 尚朗著Google Android开发入门与实战M:清华大学,2009-07-01.9 高昂著支持动态语言的Android平台M:人民邮电,2009-05-07. 10 eoe.Android开发社区.eoeandroid./ 2010-04-10.11 JavaEye论坛.javaeye./forums2010-04

48、-15.13 高焕堂编Android 应用框架原理与程式设计(第三版)M:清华大学,2008-10-0314 丰盛主编Android 应用开发揭秘M:机械工业,2010-01-25致 从确定题目到设计完成历时五个月,这段时间里我得到了很多人的支持和帮助,在此向所有给予我支持与帮助的老师同学们致以最真诚的感。首先,要感指导老师,没有他的关心和帮助,我的设计很难顺利完成。他不仅在知识获取上给了我很大启发,还在生活、工作态度上深深的影响了我,他对待工作的认真负责、严谨的态度让我钦佩;他做人的大气、为人的和善让我学会博爱和感恩。这些对我以后的工作和学习是一种巨大的帮助,衷心地感老师耐心的辅导。其次,感

49、我的同学们,他们在我的工作和生活上都给予了极大的支持和帮助,尤其是在系统开发阶段,甚至放下自己的毕业设计帮助我解决了一个又一个难题,你们。最后,再次向在学习、工作和生活中给予我关心、支持与鼓励的所有老师同学们表示最诚挚的意!附录附录1 文件清单一、数据库文件1、会员评论信息表表一:会员评论信息表字段 类型 整理 Null 默认 额外 id int(5) 否 auto_increment username varchar(20) utf8_unicode_ci 否 foodname varchar(20) utf8_unicode_ci 否 content varchar(100) utf8_u

50、nicode_ci 否 state int(1) 否 0other varchar(20) utf8_unicode_ci 是 NULL 2、美食信息表表二:美食信息表字段 类型 整理 Null 默认 额外 foodid int(100) 否 auto_increment foodname varchar(100) utf8_unicode_ci 否 foodimage varchar(100) utf8_unicode_ci 否 details varchar(100) utf8_unicode_ci 否 category varchar(20) utf8_unicode_ci 是 NULL

51、 restaurant varchar(100) utf8_unicode_ci 否 foodprice varchar(20) utf8_unicode_ci 否 state int(1) 否 0isRecommend int(1) 是 0other varchar(100) utf8_unicode_ci 是 NULL 3、订单信息表字段 类型 整理 属性 Null 默认 orderid varchar(50) utf8_unicode_ci 否 username varchar(20) utf8_unicode_ci 否 accepter varchar(20) utf8_unicode

52、_ci 否 subtime date 否 send varchar(100) utf8_unicode_ci 否 telphone int(11) 否 totalprice varchar(20) utf8_unicode_ci 否 email varchar(20) utf8_unicode_ci 是 NULL state int(1) 否 0other varchar(100) utf8_unicode_ci 是 NULL 4、商家信息表字段 类型 整理 Null 默认 bid char(18) utf8_unicode_ci 否 name varchar(20) utf8_unicode

53、_ci 否 password varchar(20) utf8_unicode_ci 否 restaurant varchar(50) utf8_unicode_ci 否 image varchar(30) utf8_unicode_ci 是 NULL tel varchar(12) utf8_unicode_ci 否 city varchar(20) utf8_unicode_ci 是 address varchar(50) utf8_unicode_ci 否 lat varchar(15) utf8_unicode_ci 是 NULL lng varchar(15) utf8_unicode_ci 是 NULL state int(1) 否 0email varchar(50) utf8_unicode_ci 是 NULL other varchar(50) utf8_unicode_ci 是 NULL 5、会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论