能很久都不会有变动,所以考虑在客户端也创建一个数据库把服务器端发送过来的数据存储在本地数据库中,当服务器有更新时只需要传递改变的数据就可以实现更新。
3.3.1 数据库表及其结构
服务器数据库(SQL Server 2005)
Admin表:管理员编号,用户名,密码,权限。
BaseProducts表:菜品编号,菜品名字,菜品种类,菜品价格,菜品图片。
DetailOrders表:订单编号,详细编号,菜品编号,数量。
DetailProducts表:编号,菜品编号,菜品价格,菜品状态,折扣,菜品描述。
Member表:会员编号,会员名字,会员密码,会员性别,会员电话,会员地址,会员积分,会员金钱。
Orders表:订单编号,订单生成时间,会员编号,订单状态。
客户端数据库(SQLite)
Shoppingrecord表:订单编号,详细编号,菜品编号,数量。
Showedgoods表:菜品编号,菜品名字,菜品种类,菜品价格,菜品图片。
3.3.2 数据
系统E-R(实体-联系)图用来描述数据关系模型,可以用来建立数据模型。本系统共有8个实体,其关系如图3.4所示。
图3.4 全局E-R图
下面列举主要实体:
管理员实体(Admin)包括管理员编号、管理员(登录)、登录密码、管理员等级等属性,如图3.5所示。
图3.5 管理员实体属性图
会员实体(Member)包括会员编号、会员(登录帐号)、登录密码、管理员性别,联系电话,联系地址,会员积分等属性。如图3.6所示。
图3.6 会员实体属性图
3.3.3 客户端数据库的连接
Andorid数据库存储的位置在data/data/<项目文件夹>/databases/目录下,Android是利用ContentProvider作为内容提供商,SQLiteOpenHelper数据库帮助类来进行对数据库的创建和操作。程序中数据库类为MyopenHelper extends SQLiteOpenHelper(继承关系),在此列出连接数据库的代码:
public class MyopenHelper extends SQLiteOpenHelper {
// 生成表shoppingrecod,用以记录购买过的商品
private static final String RECORD_TABLE = "create table shoppingrecord (oid integer primary key ,doid integer,bid integer,donum integer)";
// 生成表showedgoods,用以存储上次购买过的商品
private static final String GOODS_TABLE = "create table showedgoods (bid integer primary key ,bname varchar,bstyle varchar,bprice float,bpicture varchar)";
//创建表
public void onCreate(SQLiteDatabase db) {
db.execSQL(RECORD_TABLE);
db.execSQL(GOODS_TABLE);
}
//更新表
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("drop table if exists shoppingrecord");
db.execSQL("drop table if exists showedgoods");
db.execSQL(RECORD_TABLE);
db.execSQL(GOODS_TABLE);
}
3.3.4 服务器数据库的连接
服务器端采用SQL Server 2005来创建数据库,首先得导入sql2000_2005jdbc.jar库文件,然后在数据库的配置工具中开启SQL Server服务,接下来就要在java代码中实现连接数据库的功能了,代码如下:
public static Connection getCon() {
Connection con = null;
if (!isInitialized) {
return con;
}
try {
Class.forName(prop.getProperty("className"));
//连接数据库语句,url user pwd都在配置文件sql.ini中
con = DriverManager.getConnection(prop.getProperty("url"), prop
.getProperty("user"), prop.getProperty("pwd"));
} catch (Exception e) {
e.printStackTrace();
}
return con;
}
Sql.ini配置文件内容:
className=com.microsoft.sqlserver.jdbc.SQLServerDriver
url=jdbc:sqlserver://localhost:1433;databaseName=Dinner
user=sa
pwd=123
3.4 系统结构
本系统采用HTTP协议来进行数据传输。采用C/S结构,客户端为基于Android操作系统平台的智能手机,主要的业务逻辑则服务器端来实现,数据存储在数据库服务器。
3.4.1 部署图
系统部署如图3.7所示,客户端采用基于Android操作系统平台的智能手机,服务器端包括服务器、图形界面化工具和数据库服务器,主要处理业务逻辑和对数据的增删改查。
图3.7 系统部署图
3.4.2 类图
根据已建立的用例图确定要建立的对象类并确定属性和操作。通过检查类的定义,分析问题的需求和运用该领域知识来确定类的属性。根据系统功能需求和系统设计需要确定类的操作,本系统有6个实体类,分别为管理员实体类(Admin)、会员实体类(Member)、订单实体类(Orders)、订单详情实体类(DetailOrders)、商品实体类(Products)、商品详情实体类(DetailProducts),如图3.8所示。
图3.8 实体类
3.5 执行概念
本系统时序图如图3.9所示。
图3.9 系统时序图
1、客户端发送请求给服务器,服务器的后台Servlet负责处理数据。
2、服务器业务逻辑处理会调用DAO,进行数据处理。
3、调用实体类,把数据保存到数据库DB中。
4、DAO返回结果给Servlet。
5、Servlet把结果返回给客户端。
第四章 系统实现
4.1 Android环境搭建
任何事物要运行,都要有它的环境,Android也有它的环境才能够运行,下面介绍Android的开发环境配置.
搭建开发环境需要的软件:
1、操作系统:Windows 7或Linux
2、软件包:Android SDK(Software Development kit Java Development kit) 、ADT(Android Develoopment Tool)
3、IDE环境:Eclipse IDE+ADT Eclipse3.3以上
4、JDK:Java Runtime Environment虚拟机 、(JDK)Java Development kit
安装步骤如下:
第一步:安装Java虚拟机sun-java6-jdk版本
第二步:安装Eclipse3.5工具 官网eclipse.org/downloads/
选择版本(图4.1):进行安装
图4.1 eclipse下载
第三步:安装Android SDK:首先要下载SDK,可以在这个网址下载Http://developer.android/sdk ,如图4.2,选择相应的系统进行安装
图4.2 SDK下载
第四步:安装Android ADT插件
运行Eclipse,选择help->install new software 选择add,将会弹出一个框,如图4.3所示
图4.3 ADT的安装
点击OK,选择要安装的软件,占next,然后选择接受协议,直到安装成功,重启Eclipse软件,设置
上一篇:
安卓手机市场前景调查论文
下一篇:
试论APP广告在手机中的应用