java web開發(三) 介面使用__web

來源:互聯網
上載者:User

    前面兩篇文章講解了,介面服務的搭建以及介面的開發,如果你還未瞭解,可以先看看文章,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是否是okif (code != null && code.equalsIgnoreCase("ok")) {return result;}return null;}
解析json,當code為‘ok’的時候,才認為返回json資料成功,此時才去解析json資料。傳入返回json字串和解析類型,例如

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下載地址。

                             json格式化工具

推薦文章:SpringMVC 開發介面



博文中經常有小夥伴留言,說項目的許多問題,最近就推出幾篇補坑的文章,打算這幾篇文章詳細解決項目中的代碼以及商務程序, java web開發(四) 補坑1  java web開發(五) 介面開發補坑2 歡迎大家查看。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.