1. 程式人生 > 其它 >20201215王馨瑤 電子公文傳輸系統——個人貢獻

20201215王馨瑤 電子公文傳輸系統——個人貢獻

20201215王馨瑤 電子公文傳輸系統——個人貢獻

一、個人工作簡述

(一)設計前後端介面

1.返回類和分頁

​ 返回給前端的資料,需要有Response類/ResponsePages類封裝,也就是要帶有返回碼,返回訊息和返回體。如果要求給出分頁資訊,那麼ResponsePages類中,還需要有Page類,其中至少包括當前頁數,每頁顯示條數和總條數資訊。分頁使用github的pagehelper工具類來完成。

2.返回碼

​ 返回碼不可以使用http狀態碼,因為http狀態碼是有限的,而且提示資訊很模糊,不足以定義豐富的業務錯誤,因此要定義自己的業務返回碼。同樣,也要成對定義業務返回訊息,用於描述業務錯誤。業務分配的錯誤編碼表,需要由研發部門統籌給出。如果是服務之間呼叫的,應當透傳返回碼和返回訊息。

http返回物件:
{
    code: code,
    msg: msg,
    pageInfo: {         // 分頁資訊
        curPage: 1,
        pageLimit: 10,
        page: 1,
        total: 10
    }
    data: {data}
}

(二)設計後端介面

​ 主要涉及軟體系統“後端”的東西。比如,用於託管網站和 App 資料的伺服器、放置在後端伺服器與瀏覽器及 App 之間的中介軟體,它們都屬於後端。簡單地說,那些你在螢幕上看不到但又被用來為前端提供支援的東西就是後端。

​ 網站的後端涉及搭建伺服器、儲存和獲取資料,以及用於連線前端的介面。如果說前端開發者關心的是網站外觀,那麼後端開發者關心的是如何通過程式碼、API 和資料庫整合來提升網站的速度、效能和響應性。

1.前端通過介面呼叫後臺返回的資料

​ jsp頁面向伺服器發起了一個ajax請求,請求的地址是"servlet/JJJJ",請求成功後執行回撥函式,這個data就是這個url返回的資料,一般是一個json格式的字串,它的根本還是一個字串。所以前端拿到這個字串之後,要將它轉化為json(陣列)物件,然後訪問這個物件的鍵/值,從而進行頁面資料渲染

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title>test page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

</head>

<body>

  this is my jsp

  <br>

    <div id="json"></div>

</body>

 

<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script>

<script type="text/javascript"> 

  $.ajax({ 

      type: "Get", 

      url: "servlet/JJJJ", 

      success: function(data){ 

      $("#json").text(data); 

      } 

    }) 

</script>

</html>

2.後端介面

//JJJJ.java

 

public void doGet(HttpServletRequest request, HttpServletResponse response)

​      throws ServletException, IOException {

​    request.setCharacterEncoding("UTF-8");

​    response.setCharacterEncoding("UTF-8");

​    response.setHeader("contentType", "text/html; charset=utf-8");

​    PrintWriter out = response.getWriter(); 

​    String jsonstr = "[{\"name\": \"eco\", \"age\": \"21\"}]";

​    out.print(jsonstr);

​    out.flush();

​    out.close();

}

​ servlet,定義了一個json格式的字串jsonstr,前端對這個servlet發起http請求後,它就返回給前端一個json字串。這個手寫的json字串,注意了裡面的冒號要用轉義字元“\”。

3.後臺servlet內資料轉換

//java物件轉化為json字串

User user = new User("eco", "567568");      //java物件

JSONObject json = JSONObject.fromObject(user);  //轉為json物件

String jsonstr = json.toString();        //轉為json字串

//java物件列表轉化為json字串

User user1 = new User("eco", "567568");

User user2 = new User("桔子桑", "123123");

List list = new ArrayList();          //陣列列表,並新增兩個user物件

list.add(user1);

list.add(user2);

JSONArray array = JSONArray.fromObject(list);  //java物件列表轉化為json物件陣列

String jsonstr = array.toString();       //json物件陣列轉化為json字串

(三)設計跳轉功能、設計傳遞資訊功能

1.前端資料轉換

前端通過後臺提供的介面獲得了json字串,接下來就是將其轉化為json物件(列表),然後再對其屬性進行操作。

二、你們小組總共的程式碼行數,你貢獻的程式碼行數?相關程式碼連結?

​ 小組總共5992行程式碼,個人貢獻程式碼數為1200行左右,以下為專案程式碼。

​ 其中,我編寫了src資料夾下com.action裡user_servlet.java、zhuanjia_servlet.java和WebRoot下azhuanjia檔案裡的程式碼、liuService.java、loginService.java、EncodingFilter.java、Pagination.java的程式碼

faker電子公文傳輸系統: 電子公文傳輸系統 (gitee.com)

三、你們小組總共的文件數?你貢獻的文件數?相關連結?

總共文件數為8。其中我貢獻了三篇