程序通过org.springframework.web.client.RestTemplate调用REST服务,这里REST服务使用http://gturnquist-quoters.cfapps.io/api/random
省去maven搭建项目与model类部分,主要代码如下:
package consume.restfull.web.service.hello;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.client.RestTemplate;
@SpringBootApplication
public class Application implements CommandLineRunner {
private static final Logger log = LoggerFactory.getLogger(Application.class);
public static void main(String[] args){
SpringApplication.run(Application.class, args);
}
@Override
public void run(String... arg0) throws Exception {
RestTemplate restTemplate = new RestTemplate();
Quote quote = restTemplate.getForObject("http://gturnquist-quoters.cfapps.io/api/random", Quote.class);
log.info(quote.toString());
}
}
说明:
RestTemplate makes interacting with most RESTful services a one-line incantation.
The Jackson JSON processing library is in the classpath, RestTemplate will use it (via a message converter) to convert the incoming JSON data into a Quote object.
RestTemplate supports other HTTP verbs such as GET, POST, PUT, and DELETE.