将数据库中查询的结果转换为json, 然后调用接口的方式返回json

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将数据库中查询的结果转换为json, 然后调用接口的方式返回json相关的知识,希望对你有一定的参考价值。

调用接口,无非也就是打开链接 读取流 将结果以流的形式输出

将查询结果以json返回,无非就是将查询到的结果转换成jsonObject

=============================================================

/***
     * 将从数据中取到的结果以json的格式返回
     *
     * @param response
     * @throws IOException
     */
    @RequestMapping(value = "/getJson")
    public void getJson(HttpServletResponse response) throws IOException {
        List list = userService.getUsers();
        JSONArray Js = JSONArray.fromObject(list);
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("msg", "success");
        jsonObject.put("data", Js.toString());
        ServletOutputStream out = response.getOutputStream();
        out.print(jsonObject.toString());
    }

=============================================================

/***
     * 调用接口
     * @param mm
     * @param response
     * @return
     * @throws IOException
     */
    @RequestMapping(value = "/getUser")
    public String getUsers(ModelMap mm, HttpServletResponse response)
            throws IOException {
        String url = "http://127.0.0.1:8080/ssm/getJson";
        URL postUrl = new URL(url);
        HttpURLConnection connection = (HttpURLConnection) postUrl.openConnection();
        connection.setDoOutput(true);
        connection.setDoInput(true);
        connection.setRequestMethod("POST");
        connection.setUseCaches(false);
        connection.setInstanceFollowRedirects(true);
        connection.setRequestProperty("Content-Type",
                "application/x-www-form-urlencoded");
        Map<String,String> headerMap=new HashMap<String,String>();
        if(!headerMap.isEmpty()){
              for (Map.Entry<String, String> entry : headerMap.entrySet()) {  
                  connection.setRequestProperty(entry.getKey(),entry.getValue());
              }
          }
        connection.connect();
        DataOutputStream out = new DataOutputStream(connection.getOutputStream());
        //out.writeBytes(content);//content为方法参数
        out.flush();
        out.close(); // flush and close
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
        String line="";
        line = reader.readLine();
        reader.close();
        connection.disconnect();
        mm.addAttribute("line", line);
        //mm.addAttribute("list", userService.getUsers());
        return "index.jsp";
    }

 

以上是关于将数据库中查询的结果转换为json, 然后调用接口的方式返回json的主要内容,如果未能解决你的问题,请参考以下文章

将数据库中查询的结果转换为json(方式2)

将 MySQL 结果转换为 JSON 的效率

Angular2 将 json 结果转换为接口

将 json 转换为石墨烯 graphql 响应

查询Mysql表之后将结果转换为json时如何能够保持字段的原有数据类型?

使用python将mySql查询结果转换为json