zoukankan      html  css  js  c++  java
  • 两种接口传送数据协议(xml和json)

    版权声明:本文为博主原创文章,未经博主同意不得转载。

    https://blog.csdn.net/tianyazaiheruan/article/details/37659983

       规范性接口开发中。一般数据是以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
查看全文
  • 相关阅读:
    redis在centos7下安装(源码编译)
    Centos7之Gcc安装
    Jmeter工具之上传图片,上传音频文件接口
    什么是系统平均负载(Load average)
    sonar+Jenkins 构建代码质量自动化分析平台
    数据库主从相关配置参数说明
    现有数据库配置主从同步
    MySQL5.7多主一从(多源复制)同步配置
    MySQL5.7主从从配置
    MySQL5.7主从同步配置
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10846102.html
  • Copyright © 2011-2022 走看看