前面两篇文章讲解了,接口服务的搭建以及接口的开发,如果你还未了解,可以先看看文章,java web开发(一) 环境搭建和 java web开发(二) 接口开发。本篇文章,结合后台接口服务和客户端。客户端从接口获取数据,然后展示。(客户端使用Android)。
一.接口服务创建。可以参考上篇文章,这儿就不啰嗦了!
二. 实现Android项目。
1.创建Android项目。相信大家都会吧!(就不多说了)
2.实现Json数据解析。上篇接口开发文章中提到,返回的Json数据有2种,一种是对象,另一种是数组。那么我们就需要实现两种格式的解析对象。
首先,需要创建一个基类,内部有三个字段,code、msg、time。具体实现如下:
- public class Response implements Serializable {
- /**
- *
- */
- private static final long serialVersionUID = 1L;
- private String code;
- //
- private String msg;
- private Long time = new Date().getTime();
- public String getCode() {
- return code;
- }
- public void setCode(String code) {
- this.code = code;
- }
- /**
- * @return the time
- */
- public Long getTime() {
- return time;
- }
- /**
- * @param time
- * the time to set
- */
- public void setTime(Long time) {
- this.time = time;
- }
- public String getMsg() {
- return msg;
- }
- public void setMsg(String msg) {
- this.msg = msg;
- }
- public void setContent(String code, String msg) {
- this.code = code;
- this.msg = msg;
- }
- }
该类是所有json解析类的基类,封装了服务器返回的一些信息。
2.1 对象。
- public class EntityResponse<T> extends Response {
- private static final long serialVersionUID = 3750508105973880680L;
- private T object;
- public T getObject() {
- return object;
- }
- public void setObject(T object) {
- this.object = object;
- }
- }
该类继承自Response,用于返回json数据是单独对象的情况。
2.2 数组。
- public class ListResponse<T> extends Response {
- private static final long serialVersionUID = 2857885317968129959L;
- private List<T> items;
- public List<T> getItems() {
- return items;
- }
- public void setItems(List<T> items) {
- this.items = items;
- }
- }
该类继承自Response,用于返回json数据是数组的情况。
2.3 Json解析。解析Json使用的是Gson。
- private static <T> T parseByGson(String json, TypeToken<T> typeToken) {
- Gson gson = new Gson();
- T result = gson.fromJson(json, typeToken.getType());
- String code = ((com.studentmaneagemobile.mobile.Response) result)
- .getCode();
- String msg = ((com.studentmaneagemobile.mobile.Response) result)
- .getMsg();
- //需要判断返回code是否是ok
- if (code != null && code.equalsIgnoreCase("ok")) {
- return result;
- }
- return null;
- }
- TypeToken<ListResponse<Students>> token = new TypeToken<ListResponse<Students>>() {
- };
2.4 具体代码详解代码下载!
2.5 运行。
首先,启动接口服务,启动成功后,在浏览器中输入接口地址,例如出现如下截图表示接口服务启动成功,
接着,运行客户端代码,点击‘inq’按钮,效果图如下所示,
三. 总结。
如果你做过Android或者Ios或者其他客户端开发,那么总是会需要后台服务提供接口。要实现这样的功能,简单的说可以分为2部分:
1.接口服务开发。详情请看java web开发(一) 环境搭建和 java web开发(二) 接口开发。
2.客户端开发。客户端需要,UI设计、网络、图片、数据库或者其他框架等等。
PS: 这两部分,在前期设计的时候,需要好的架构师好好的设计一下!否则,在后期开发时,会遇到很大的问题!
总结起来好像很简单,但是只有开发过的人,才知道其中的滋味!!“Good good study day day up”!
PS: 接口服务器代码, 接口服务demo下载地址。
客户端代码,客户端demo下载地址。
推荐文章:SpringMVC 开发接口