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

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

规范性接口开发中,一般数据是以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

免责声明:文章转载自《两种接口传送数据协议(xml和json)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇bootstrapValidator 重置表单GitLabPipeline语法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

精讲RestTemplate第7篇-自定义请求失败异常处理

本文是精讲RestTemplate第7篇,前篇的blog访问地址如下: 精讲RestTemplate第1篇-在Spring或非Spring环境下如何使用 精讲RestTemplate第2篇-多种底层HTTP客户端类库的切换 精讲RestTemplate第3篇-GET请求使用方法详解 精讲RestTemplate第4篇-POST请求方法使用详解 精讲Res...

.Net操作Excel —— NPOI

近期的两个项目都有关于NPOI的功能,经过了一点学习,自己也摸索了一会,感觉还有点意思。现在将部分代码分享一下。一部分是C#代码,一部分是VB.Net的,懒得修改了,基本上都是从项目文件中copy出来的。如果错漏,请指教。 概述: 1、整个Excel表格:WorkBook(工作薄),包含的叫页(工作表):Sheet;行:Row;单元格Cell。 2、NPO...

Apache Commons 工具类介绍及简单使用

转自:http://www.cnblogs.com/younggun/p/3247261.html Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。下面是我这几年做开发过程中自己用过的工具类做简单介绍。 组件 功能介绍 BeanUtils 提供了对于JavaBean进行各种操作,克隆对象,属性等等....

drf—— drf的请求与响应

一、Request#常用属性 -data :前端以post请求提交的数据都在它中 -FILES :前端提交的文件 -query_params:就是原来的request.GET -重写了 __getattr__ -使用新的request.method其实取得就是原生request.method(通过反射实现)...

js~ajax获取后端HTTP状态的几种情况

jquery发起ajax请求到后端接口,后端向前端返回数据,当然也存在后端接口直接重定向(302)到其它接口,然后再向前端返回数据,当然这种情况需要考虑跨域问题。 前端代码 //测试一下http status $.ajax({ type: "get", url: "/redirect",...

若依管理系统源码分析-分页的实现以及post请求时的分页

场景 官方示例分页实现 前端调用实现 //一般在查询参数中定义分页变量 queryParams: { pageNum: 1, pageSize: 10}, //页面添加分页组件,传入分页变量 <pagination v-show="total>0":total="total":page.sync="queryParams.page...