前面講了調用http接口的操作,這篇講下接收http接口的操作。(以Spring MVC為例)
1)如果發送過來的內容類型是application/x-www-form-urlencoded ,則按照spring MVC接收表單形式處理即可,表單中的某個參數可能是json格式,也可能是xml格式,按照對應的格式解析方法解析成java對象即可;
2)如果發送過來的內容類型是application/json ,則按照spring MVC接收json格式的方式處理即可;
3)那么接收數據,處理完后,springMvc怎么將結果返回給調用者呢?如下:
a.可以將java對象轉換為json字符串(GSON等方式轉換)或者xml字符串(JAXB轉換),然后利用response獲得輸出流,將轉換的字符串直接輸出,例子如下:
@RequestMapping(value="/hello5.do") public void hello(HttpServletResponse response) throws IOException{ UserInfo u1=new UserInfo(); u1.setAge(15); u1.setUname("你好"); UserInfo u2=new UserInfo(); u2.setAge(152); u2.setUname("你好2"); Map<String,UserInfo> map=new HashMap<String, UserInfo>(); map.put("001", u1); map.put("002", u2); String jsonString = JSON.toJSONString(map); response.setCharacterEncoding("utf-8"); response.getWriter().write(jsonString); response.getWriter().close(); }
注意:這里方法返回值是void
b.利用@ResponseBody直接將返回的對象轉換為xml或者json字符串;注意:這里方法的返回值需要寫要轉換的java對象。
這種方法詳解后面轉載的兩篇文章:
https://www.cnblogs.com/cainiao-Shun666/p/9183899.html
