zoukankan      html  css  js  c++  java
  • Java 调用restful webservice & jackson

    package com.bullshit.webcrawler.client.impl;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.util.List;
    
    import com.bullshit.storage.entity.AuthUser;
    import com.bullshit.storage.entity.Proxy;
    import com.bullshit.storage.entity.vo.AuthUsersVo;
    import com.fasterxml.jackson.databind.ObjectMapper;
    
    public class ProxyCollectionRestService {
    
    	private static final String targetURL = "http://localhost:8080/blueberry/rest/v1/api/proxies";
    	
    	public Proxy[] getAllProxies(){
    
    		Proxy[] proxies = null;
    		try {
    	          URL restServiceURL = new URL(targetURL);
    	          HttpURLConnection httpConnection = (HttpURLConnection) restServiceURL.openConnection();
    	          httpConnection.setRequestMethod("GET");
    		      httpConnection.setRequestProperty("Accept", "application/json");
    		      if (httpConnection.getResponseCode() != 200) {
    		             throw new RuntimeException("HTTP GET Request Failed with Error code : "
    		                           + httpConnection.getResponseCode());
    		      }		
    		      BufferedReader responseBuffer = new BufferedReader(new InputStreamReader(
    		             (httpConnection.getInputStream())));
    		
    		      String output;
    	          ObjectMapper objectMapper = new ObjectMapper();
    	          while ((output = responseBuffer.readLine()) != null) {
    	        	  proxies = objectMapper.readValue(output, Proxy[].class);
    	        	  List<Proxy> myObjects22 = objectMapper.readValue(output, objectMapper.getTypeFactory().constructCollectionType(List.class, Proxy.class));
    	              System.out.println(myObjects22.size());
    	        	  break;
    	          }
    	          httpConnection.disconnect();
    	     } catch (MalformedURLException e) {
    	          e.printStackTrace();
    	     } catch (IOException e) {
    	          e.printStackTrace();
    	     }
    		return proxies;
    	}
    	
    	public AuthUsersVo postAuthUserInfo(AuthUser record){
    
    		AuthUsersVo authUsersVo = null;
    		 try {
    
                 URL targetUrl = new URL(targetURL);
    
                 HttpURLConnection httpConnection = (HttpURLConnection) targetUrl.openConnection();
                 httpConnection.setDoOutput(true);
                 httpConnection.setRequestMethod("POST");
                 httpConnection.setRequestProperty("Content-Type", "application/json");
    
                 ObjectMapper objectMapper = new ObjectMapper();
                 String input = objectMapper.writeValueAsString(record);
    
                 OutputStream outputStream = httpConnection.getOutputStream();
                 outputStream.write(input.getBytes());
                 outputStream.flush();
    
                 if (httpConnection.getResponseCode() != 200) {
                        throw new RuntimeException("Failed : HTTP error code : "
                               + httpConnection.getResponseCode());
                 }
                 
                 BufferedReader responseBuffer = new BufferedReader(new InputStreamReader(
                               (httpConnection.getInputStream())));
    
                 String output;
                 System.out.println("Output from Server:
    ");
                 while ((output = responseBuffer.readLine()) != null) {
                        System.out.println(output);
                 }
    
                 httpConnection.disconnect();
    
            } catch (MalformedURLException e) {
    
                 e.printStackTrace();
    
            } catch (IOException e) {
    
                 e.printStackTrace();
    
           }
    		return authUsersVo;
    	}
    
    	public static void main(String[] args) {
    		ProxyCollectionRestService service = new ProxyCollectionRestService();
    
    		Proxy[] s = service.getAllProxies();
    		
    		System.out.println(s.length);
    	}
    
    }
    

      

  • 相关阅读:
    sql学习之1-create、select
    mysql利用binlog日志恢复数据库小实验
    vmware 存储路径
    ubuntu基本命令
    Java编程规范整理
    种菜之旅
    modSecurity规则学习(五)——DDOS攻击检测
    modSecurity规则学习(三)——SecRule
    modSecurity规则学习(二)——配置文件
    modSecurity规则学习(一)——配置文件
  • 原文地址:https://www.cnblogs.com/dunkbird/p/4433027.html
Copyright © 2011-2022 走看看