diff --git a/src/main/java/com/ajou/procoding/myweb/controller/MyWebController.java b/src/main/java/com/ajou/procoding/myweb/controller/MyWebController.java new file mode 100644 index 0000000000000000000000000000000000000000..2e28cf22f1999d4d856ff279744cd9b126c86647 --- /dev/null +++ b/src/main/java/com/ajou/procoding/myweb/controller/MyWebController.java @@ -0,0 +1,39 @@ +package com.ajou.procoding.myweb.controller; + +import java.io.IOException; + +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 com.ajou.procoding.myweb.dto.MusicList; +import com.fasterxml.jackson.databind.ObjectMapper; + +@RestController + +public class MyWebController { + + @GetMapping(value="/musicSearch/{term}") + public String musicSearchByPath(@PathVariable String term) { + return ""; + } + + + @GetMapping(value="/musicSearch") + public MusicList musicSearchByParam(@RequestParam String term) { RestTemplate restTemplate = new RestTemplate(); + String url = String.format("https://itunes.apple.com/search?term=%s&entity=album", term); + try { + 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; + }} + + +} diff --git a/src/main/java/com/ajou/procoding/myweb/dto/MusicList.java b/src/main/java/com/ajou/procoding/myweb/dto/MusicList.java new file mode 100644 index 0000000000000000000000000000000000000000..9eb57ea30007ce312d053c5cddba4132956a1d4b --- /dev/null +++ b/src/main/java/com/ajou/procoding/myweb/dto/MusicList.java @@ -0,0 +1,17 @@ +package com.ajou.procoding.myweb.dto; + + +import java.util.List; +import java.util.Map; + +import lombok.Getter; +import lombok.Setter; +@Getter +@Setter +@Tostring + +public class MusicList { + private Integer resultCount; + private List<Map<String, Object>> results; + +} diff --git a/src/main/java/com/ajou/procoding/myweb/dto/Tostring.java b/src/main/java/com/ajou/procoding/myweb/dto/Tostring.java new file mode 100644 index 0000000000000000000000000000000000000000..ef3934896423b3ce414cf6d752daf084b95afeeb --- /dev/null +++ b/src/main/java/com/ajou/procoding/myweb/dto/Tostring.java @@ -0,0 +1,5 @@ +package com.ajou.procoding.myweb.dto; + +public @interface Tostring { + +}