激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java 中HttpClient傳輸xml字符串實例詳解

java 中HttpClient傳輸xml字符串實例詳解

2020-09-13 12:20Java之家 Java教程

這篇文章主要介紹了java 中HttpClient傳輸xml字符串實例詳解的相關資料,需要的朋友可以參考下

javaHttpClient傳輸xml字符串實例詳解

介紹:我現在有一個對象page,需要將page對象轉換為xml格式并以binary方式傳輸到服務端

其中涉及到的技術點有:

1、對象轉xml流
2、輸出流轉輸入流
3、httpClient發送二進制流數據

POM文件依賴配置

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>3.8.1</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.2</version>
  </dependency>
   
  <dependency>
   <groupId>org.apache.httpcomponents</groupId>
   <artifactId>httpmime</artifactId>
   <version>4.5.2</version>
  </dependency>
  <dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.4</version>
  </dependency>
  <dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.2.4</version>
    <type>jar</type>
    <scope>compile</scope>
  </dependency>
  <dependency>
    <groupId>org.xwiki.platform</groupId>
    <artifactId>xwiki-platform-rest-model</artifactId>
    <version>7.2</version>
  </dependency>
</dependencies>

java代碼示例

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
public void testNewPage() throws Exception{
    //定義對象
    Page page =new Page();
    page.setTitle("testPage");
    page.setSyntax("xwiki/2.0");
    page.setContent("This is a testPage");
    page.setId("xwiki:Main.testPage");
    //初始化并轉換對象為xml文件的流
    JAXBContext context = JAXBContext.newInstance("org.xwiki.rest.model.jaxb");
    Marshaller marshaller=context.createMarshaller();
    Unmarshaller unmarshaller = context.createUnmarshaller();
    ByteArrayOutputStream out = new ByteArrayOutputStream();
    marshaller.marshal( page, out );
    //將流轉換并放入到InputStreamEntity中
    InputStreamEntity inputStreamEntity=new InputStreamEntity(new ByteArrayInputStream(out.toByteArray()));
 
    //發送請求
    CloseableHttpClient httpclient = HttpClients.createDefault();
    HttpUriRequest httpPost = RequestBuilder.put()
        .setUri(new URI("http://172.16.200.220:8082/xwiki/rest/wikis/xwiki/spaces/Main/pages/testPage"))
        .setEntity(inputStreamEntity)
        .setHeader("Content-Type", "application/xml")
        .setHeader("Cookie", cookieStr).build();
    //獲取返回結果
    CloseableHttpResponse response = httpclient.execute(httpPost);
    System.out.println(response.getStatusLine().getStatusCode());
    HttpEntity responseEntity=response.getEntity();
    System.out.println(responseEntity);
    if(response.getStatusLine().getStatusCode()<400){
      Page responsePage = (Page) unmarshaller.unmarshal(responseEntity.getContent());
      System.out.println(responsePage);
//      System.out.println(new Gson().toJson(responsePage));
    }
  }

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/gsying1474/article/details/51505714

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 中文字幕在线播放一区 | 一级做a爰片性色毛片2021 | 国产在线1区 | 色999国产| 国产成人在线观看免费 | 国产一区二区三区四区在线 | 中韩毛片 | 欧美另类综合 | 欧美成人自拍 | 亚洲影视中文字幕 | 4399一级成人毛片 | 九九综合视频 | 中文字幕观看 | 成人在线视频精品 | 成人精品 | 亚洲综合视频一区 | 国产精品成人一区二区三区电影毛片 | 国产一国产精品一级毛片 | av中文字幕免费在线观看 | 91成人一区 | 久久精片 | 国产午夜电影在线观看 | 国产成人精品无人区一区 | 亚洲精品成人久久久 | 国产在线观看一区二区三区 | h视频免费在线观看 | 国产精品久久久久影院老司 | 一级α片| 日本爽快片100色毛片视频 | 精品一区二区电影 | 欧美 日韩 中文 | 国产乱淫a∨片免费观看 | 日本人乱人乱亲乱色视频观看 | 嫩呦国产一区二区三区av | 一级做受大片免费视频 | 国产一区国产二区在线观看 | 日本高清黄色片 | 青青草成人影视 | 香蕉国产片 | 青青草成人免费视频在线 | 斗罗破苍穹在线观看免费完整观看 |