基于Android开发的APP服务器端设计
2017-12-15李松泰梁家辉
李松泰+梁家辉
摘要:近年来,Android平台凭借其稳定性和开放性吸引了大量的用户与开发者,成为了目前发展最快、用户最多的移动智能操作系统。鉴于其平台移动APP开发的迅速发展,为了实现手机端与服务器端更好的交互性,改文在“尝鲜”APP项目开发的基础上,阐述了如何合理地设计手机应用的服务器端。
关键词:Android;服务器;MYSQL数据库;Java编程语言
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)32-0099-02
Design of APP Server Side Based on Android
LI Song-tai, LIANG Jia-hui
(Institute of Information Science and Technology South China Business College Guangdong University of Foreign Studies , Guangzhou 510545, China)
Abstract: In recent years, Android platform has attracted a large number of users and developers with its stability and openness, and has become the fastest developing and most mobile intelligent operating system.Because of the rapid development of the mobile APP development platform, in order to realize the mobile phone end and the server end better interactivity, this paper is Based on the "early adopters of APP project development, expounds how to design reasonable mobile phone application server.
Key words:Android; server; MYSQL database; Java programming language
1 概述
“尝鲜”APP可以让用户群体方便快捷地体验到一些厂商新推出的产品试用。该APP可以在新产品正式面市之前,让用户提前试用产品,并从中收集到用户的反馈和意见;同时根据反馈信息来推测消费者对产品的兴趣,预测产品的市场需求程度。此外,它还利用分众理念,根据用户提供的信息对消费人群进行划分,减少甚至避免因盲目推广和消费者定位失误、新产品市场定位失败等给厂商带来的损失。作为一个拥有交互功能的应用程序,它的服务器和数据库是必不可少的。出于对手机端和服务器端响应性能的考虑,本文作者决定使用Apache 旗下的tomcat作为应用服务器,使用Java语言基于eclipse IDE来开发,并通过MYSQL数据库设计数据表。
2 服务器端需求分析
“尝鲜”APP是一款试用品领取机的配套软件,用户通过扫码来领取商品试用。根据其功能的特性,服务器端要实现的功能如下:
1) 实现和客户端的数据交互;
2) 实现和数据库的连接功能;
3) 收到客户端发来的请求时,有相对应的代码实现。
剔除部分使用频率较低的功能需求,最终得到的“尝鲜”APP客户端用例图
3 服务器交互原理
在本地通过tomcat搭建服务器,在服务器src文件夹中编写好请求处理的java代码文件,当客户端请求发来时,通过struts2框架对请求进行解析,并跳转到与请求对应的java代码文件,如果涉及数据库操作则通过对应的mysql连接代码连接到对应的数据库对数据进行访问,最后在java代码文件中将处理结果返回给客户端。
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。
上面代码中,客户端发来获取主界面商品信息的请求getGoods,struts2框架进行解析后会跳转到处理代码,处理代码中使用HttpServletRequest获取客户端发来的带有标识的字符串信息,然后根据获取的信息,进行数据库的查询操作。查询完毕并获结果后,通过HttpServletResponse将结果信息返回给客户端[1]。
4 “尝鲜”APP的数据库设计
由于本次创新项目的“尝鲜”APP需要能够实现本地和服务器端数据交互的功能,因此谨慎设计一个合理的数据库很有必要。为了将用户的数据要求清楚、准确描述出来,本文作者结合APP的模块功能设计,得出项目的实体-联系图,如图2所示[2]。
为了该APP的数据流程要求清楚、准确的描述出来,本文作者依据已知的信息得出此软
“尝鲜”APP要实现数据存储的需求主要有:对于用户的注册信息存储、试用商品的数据存储、用户评论数据储存和对应用户的领取记录的数据存储。根据这个需求设计的数据库,主要包含四张表,四张表分别包含有用户信息表,试用商品信息表,用户评论表以及用户领取记录表。其中用户信息表主要是记录包含了用户的个人信息,试用商品信息表主要是记录了对应商品的各种信息,用户评论表主要是记录了各种用户对该商品的评论信息,用户领取记录表主要是记錄了用户领取的试用商品的信息。限于篇幅,本文只列举两个表的具体设计情况。商品信息表的设计如表1所示,用户领取记录表的设计如表2所示[3]。endprint
5 系统实现
当用户打开软件后,后台会自动从服务器上获取商品数据,显示到APP界面上。服务器端的关键代码实现如下[4]:
//设定一个List用来装入从数据库获取的数据
List
//连接数据库并设定查找条件。
Connection connect = DatabaseConnect.getConnection()
Statement statement = connect.createStatement();
String sql = "select * from goods";
ResultSet result = statement.executeQuery(sql);
//將得到的数据逐条获取,并加入一开始设置的List中
while (result.next()) {
String title = result.getString("title");
String price = result.getString("price");
String number = result.getString("number");
String url = result.getString("url");
intid = result.getInt("id");
Goods good = new Goods(title,number,price,url,id);
goods.add(good);
}
returngoods;
6 结束语
随着整个社会信息化程度的不断加深,基于Android平台的应用程序的不断更新发展,其中拥有交互功能的应用必定会成为最受用户群体欢迎的APP。因此,一个拥有交互功能的应用程序开发中只有搭建一个合适的服务器端以及构建完善的数据库,才能让应用程序有更好的逻辑性。“尝鲜”是一款交互型的APP,无论是实时数据还是历史数据,它都有对数据进行快速抓取和处理的功能,相信随着智能时代的到来,拥有交互功能的APP必将成为主流。
参考文献:
[1] 刘望舒.Android进阶之光[M]. 北京:电子工业出版社, 2017.
[2] 刘增杰.MySQL5.7从入门到精通[M]. 北京:清华大学出版社, 2016.
[3] Baron Schwartz,Peter Zaitsev.高性能MySQL[M].3版,北京: 电子工业出版社, 2013
[4] Bill Phillips,Chris.Android编程权威指南[M].3版,北京: 人民邮电出版社, 2017.