在这两天的工作中,我所在的小组进一步进行系统的详细设计,界面设计也在不断跟进之中。这几天我们小组主要针对了以下几点进行了讨论:
- 用户端详细设计的进行
- 服务器端详细设计的进行
- 用户界面设计的进行
1、创建Flag
伪代码如下:
1.检查网络是否可用,不可用跳转到11
2.检查各项信息是否输入完整,不完整跳转到11
3.检查日期输入是否合法,不合法跳转到11
4.从缓存对象SharedPreferences中获取用户ID,获取失败跳转到11
5.对数据进行格式化处理,以满足服务器接口要求
6.建立链表,将用户输入的数据保存在其中
7.调用网络工具类接口,等待返回结果
8.判断返回结果是否成功,不成功跳转到11
9.判断返回的数据中的数据是否为“0”,不为“0”跳转到11
10.创建Flag成功
11.创建Flag失败
画出的UML活动图如下所示:
2、查找用户
伪代码如下:
1.检查网络是否可用,不可用跳转到11
2.检查搜索信息是否输入正确,不正确跳转到11
3.检查搜索信息是否是11位,是跳转到4,不是跳转到5
4.建立链表,将用户输入的数据保存在其中,搜索类型为“手机号”
5.建立链表,将用户输入的数据保存在其中,搜索类型为“ID”
6.调用网络工具类接口,等待返回结果
7.判断返回结果是否成功,不成功跳转到11
8.解析json数据,获取用户ID
9.判断ID是否为“0”,为“0”跳转到11
10.查找用户成功,跳转到添加好友界面
11.查找用户失败
画出的UML活动图如下所示:
二、服务器端详细设计的进行
本次后台所做的主要工作是model层模型的建立,建立的模型有flag,comment,user,friend等,具体的一些模型的建立可以参照下图。
如:
Flag.java
public long endTime;
public long createTime;
public Stringaward;
public int achieve;
public BooleanisTeam;
public long startTime;
public int photo;
同时设置set和get方法
在进行里模型层的建立之后,我们理解对数据库的连接进行了测试,这次我们使用了c3p0技术。
c3p0.driverClass=com.mysql.jdbc.Driver
c3p0.jdbcUrl=jdbc\:mysql\://119.29.236.181/flag?useUnicode\=true&characterEncoding\=GBK
c3p0.user=****
c3p0.password=****
c3p0.minPoolSize=8
c3p0.maxPoolSize=24
c3p0.acquireIncrement=8
c3p0.initialPoolSize=8
c3p0.maxIdleTime=60
同时,这是我们的连接代码
public static DataSourceds;
static{
ds=new ComboPooledDataSource();
}
public static Connection getConnection() {
try {
return ds.getConnection();
} catch (Exceptione) {
// TODO: handle exception
e.printStackTrace();
}
return null;
}
三、用户界面设计的进行
到目前为止,用户界面的跟进情况进展顺利,在上一阶段的界面设计之后,又填充相关数据,模拟了APP界面的效果。
1.好友信息 2.好友的Flag
3.设置 4.添加好友