package com.ajou.prcoding.myweb.Controller; import com.ajou.prcoding.myweb.dto.MusicList; import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.client.RestTemplate; import java.io.IOException; @RestController public class MyWebController { RestTemplate restTemplate = new RestTemplate(); @GetMapping(value="/musicSearch/{term}") public MusicList musicSearchByPath(@PathVariable String term){ try { String url = "https://itunes.apple.com/search?term=" + term + "&entity=album"; String response = restTemplate.getForObject(url, String.class); ObjectMapper mapper = new ObjectMapper(); MusicList list = mapper.readValue(response, MusicList.class); System.out.println(list.getResultCount()); return list; } catch(IOException e) { System.out.println(e.toString()); return null; } } @GetMapping(value="/musicSearch") public MusicList musicSearchByParam(@RequestParam String term){ try { String url = "https://itunes.apple.com/search?term=" + term + "&entity=album"; String response = restTemplate.getForObject(url, String.class); ObjectMapper mapper = new ObjectMapper(); MusicList list = mapper.readValue(response, MusicList.class); System.out.println(list.getResultCount()); return list; } catch(IOException e) { System.out.println(e.toString()); return null; } } }