加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

两种接口传送数据协议(xml和json)

发布时间:2020-12-16 09:40:09 所属栏目:百科 来源:网络整理
导读:规范性接口开发中,一般数据是以json或者xml的格式传送的,而不是字符串的形式直接返回给接口调用者;下面介绍这两种格式的编写方法。 下面两种数据传送方式是接口输出端的编写。需引入的包如下: span style="font-family:KaiTi_GB2312;font-size:18px;"imp

规范性接口开发中,一般数据是以json或者xml的格式传送的,而不是字符串的形式直接返回给接口调用者;下面介绍这两种格式的编写方法。

下面两种数据传送方式是接口输出端的编写。需引入的包如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;">importjava.io.PrintWriter;

importjava.io.StringWriter;

importjavax.servlet.http.HttpServletResponse;

importorg.dom4j.Document;

import org.dom4j.io.OutputFormat;

import org.dom4j.io.XMLWriter;</span>


1.传送 XML 协议的格式数据

<span style="font-family:KaiTi_GB2312;font-size:18px;">   /**

    * xml 格式数据

    *

    * @param response

    * @param doc

    */

    publicstaticvoidoutDocToXML(HttpServletResponse response,Document doc) {

       // 以下代码请注意编码顺序

       response.setCharacterEncoding("utf-8");

       response.setContentType("text/xml;charset=utf-8");

       response.setHeader("Pragma","no-cache");

       response.setHeader("Cache-Control","no-cache");

       response.setDateHeader("Expires",0);

       PrintWriter out = null;

       StringWriter writer = new StringWriter();

       OutputFormat format = OutputFormat.createPrettyPrint(); //

       format.setEncoding("UTF-8");

       XMLWriter xmlwriter = new XMLWriter(writer,format);

 

       try {

            out = response.getWriter();

           xmlwriter.write(doc);

       } catch (Exception e) {

           e.printStackTrace();

       }

       out.print(writer.toString());

       out.close();

}</span>


2.传送 json 协议的格式数据

<span style="font-family:KaiTi_GB2312;font-size:18px;">/**

    * json 数据格式

    *

    * @param response

    * @param data

    * @param type

    */

    protectedvoidsendData(HttpServletResponse response,Object data) {

       if (data != null) {

           response.setCharacterEncoding("utf-8");

           response.setContentType("application/json;charset=UTF-8");

           response.setHeader("Pragma","no-cache");

           response.setHeader("Cache-Control","no-cache");

           response.setDateHeader("Expires",0);

           PrintWriter out = null;

           try {

                out = response.getWriter();

                out.print(data);

                out.close();

           } catch (Exception e) {

                e.printStackTrace();

           }

       }

    }</span>

转正请指明出处:blog.csdn.net/yangkai_hudong

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读