zoukankan      html  css  js  c++  java
  • Spring-RestTemplate解析json文件

    配置bean:

          @Bean(name="agvRestTemplate")
    	public RestTemplate agvRestTemplate() {
    		RestTemplate restTemplate = new RestTemplate();
                    //重点:用于将JSON、application/octet-stream
    		MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
    		mappingJackson2HttpMessageConverter.setSupportedMediaTypes(Arrays.asList(MediaType.APPLICATION_JSON, MediaType.APPLICATION_OCTET_STREAM));
    		restTemplate.getMessageConverters().add(mappingJackson2HttpMessageConverter);
    		return restTemplate;
    	}
    
            注入
            @Autowired
    	@Qualifier(value = "agvRestTemplate")
    	RestTemplate agvRestTemplate;
    
            String url = agvResource.getCallmaterial();
            Map param = new HashMap();
    	param.put("orderId", agvLog.getOrderId());
    	Map params = new HashMap();
    	params.put("call_request", param);
            
            //postForObject(url,param1,ClassName),url:请求地址,param1:请求参数 ClassName请求参数对应的实体类名。
            //postForObject主要是将请求参数转化为HttpEntity对象
            //url为String类型,会自动转换成encodedurl,为java.net.URI,会进一步encoded,画蛇添足[1]
    	Map result = agvRestTemplate.postForObject(url, params, Map.class);
    
            //getForObject(url,respType,MapVariables),respType:响应数据的类型,MapVariables:urlvariable参数,Map类型,key值需对应url中的变量
            //url:http://127.0.0.1:8080/agv/require?order_id={orderId},注意orderId
            Map result = agvRestTemplate.postForObject(url, params, Map.class);
    

    【1】:出处

  • 相关阅读:
    HelloWorld入门程序
    再写博客
    iOS--小结系列一
    iOS--ARC
    ios--block
    iOS--protocol
    iOS--内存管理
    指针基本概念
    ZooKeeper系列之十:ZooKeeper的一致性保证及Leader选举
    ZooKeeper系列之九:ZooKeeper API简介及编程
  • 原文地址:https://www.cnblogs.com/jearchen/p/13629131.html
Copyright © 2011-2022 走看看