diff --git a/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java b/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java
index 9cb176d729d5b73eae848493ca98819728043c47..1ba223c57843a52215093b18b3f85b316506ee74 100644
--- a/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java
+++ b/src/main/java/com/ajou/prcoding/myweb/Controller/MyWebController.java
@@ -4,13 +4,12 @@ import com.ajou.prcoding.myweb.dto.FavoriteMusicRequestDto;
 import com.ajou.prcoding.myweb.dto.MusicList;
 import com.ajou.prcoding.myweb.entity.FavoriteMusic;
 import com.ajou.prcoding.myweb.repository.FavoriteRepository;
-import com.fasterxml.jackson.databind.ObjectMapper;
+import com.ajou.prcoding.myweb.service.MusicService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.client.RestTemplate;
 
 import javax.transaction.Transactional;
-import java.io.IOException;
 import java.util.List;
 
 
@@ -18,54 +17,17 @@ import java.util.List;
 public class MyWebController {
 
     @Autowired
-    FavoriteRepository albumsRepo;
-    //클래스 변수로 정의
-    RestTemplate restTemplate = new RestTemplate();
+    MusicService service;
 
-    MusicList list;
 
-    @GetMapping(value="/musicSearch/{term}")
-    public MusicList musicSearchByPath(@PathVariable String term){
-        try {
-            String url =String.format("https://itunes.apple.com/search?term=%s&entity=album",term);
-            String response = restTemplate.getForObject(url, String.class);
-
-            ObjectMapper mapper = new ObjectMapper();
-
-            list = mapper.readValue(response, MusicList.class);
-
-            System.out.println(list.getResultCount());
-
-            return list;
-
-        } catch(IOException e) {
-
-            System.out.println(e.toString());
-
-        }
-        return list;
+    @GetMapping(value="/musicSearch/{name}")
+    public MusicList musicSearchByPath(@PathVariable String name){
+       return service.searchMusic(name);
     }
 
     @GetMapping(value="/musicSearch")
-    public MusicList musicSearchByParam(@RequestParam String term){
-        try {
-            String url =String.format("https://itunes.apple.com/search?term=%s&entity=album",term);
-            String response = restTemplate.getForObject(url, String.class);
-
-            ObjectMapper mapper = new ObjectMapper();
-
-            list = mapper.readValue(response, MusicList.class);
-
-            System.out.println(list.getResultCount());
-
-            return list;
-
-        } catch(IOException e) {
-
-            System.out.println(e.toString());
-
-        }
-        return list;
+    public MusicList musicSearchByParam(@RequestParam(value = "term") String name){
+        return service.searchMusic(name);
     }
 
     //Get Favorite Music list from Database
@@ -73,32 +35,13 @@ public class MyWebController {
     @GetMapping(value="/likes")
     public List<FavoriteMusic> getLikes() {
 
-        try {
-
-            return albumsRepo.findAll();
-
-        } catch (Exception e) {
-
-            System.out.println(e.toString());
-
-            return null;
-
-        }
+        return service.getLikes();
 
     }
 
     @PostMapping(value="/likes")
     @Transactional
-    public int postLikes(@RequestBody FavoriteMusicRequestDto favorite){
-        FavoriteMusic music = albumsRepo.save(favorite.toEntity());
-
-        if(music != null) {
-            return 1;
-        }
-
-        else {
-            return 0;
-        }
+    public int postLikes(@RequestBody FavoriteMusicRequestDto favorite) {
+        return service.saveFavorite(favorite);
     }
-
 }
diff --git a/src/main/java/com/ajou/prcoding/myweb/service/MusicService.java b/src/main/java/com/ajou/prcoding/myweb/service/MusicService.java
new file mode 100644
index 0000000000000000000000000000000000000000..330fc8d097bc53345ac80afb53248fb05c406f21
--- /dev/null
+++ b/src/main/java/com/ajou/prcoding/myweb/service/MusicService.java
@@ -0,0 +1,76 @@
+package com.ajou.prcoding.myweb.service;
+
+import com.ajou.prcoding.myweb.dto.FavoriteMusicRequestDto;
+import com.ajou.prcoding.myweb.dto.MusicList;
+import com.ajou.prcoding.myweb.entity.FavoriteMusic;
+import com.ajou.prcoding.myweb.repository.FavoriteRepository;
+import lombok.RequiredArgsConstructor;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.client.RestTemplate;
+
+import javax.transaction.Transactional;
+import java.io.IOException;
+import java.util.List;
+
+@Service
+@Transactional
+@RequiredArgsConstructor
+public class MusicService {
+    private final FavoriteRepository albumsRepo;
+    RestTemplate restTemplate = new RestTemplate();
+
+    MusicList list;
+
+    public MusicList searchMusic(@PathVariable String term) {
+        try {
+            String url = String.format("https://itunes.apple.com/search?term=%s&entity=album", term);
+            String response = restTemplate.getForObject(url, String.class);
+
+            ObjectMapper mapper = new ObjectMapper();
+
+            list = mapper.readValue(response, MusicList.class);
+
+            System.out.println(list.getResultCount());
+
+            return list;
+
+        } catch (IOException e) {
+
+            System.out.println(e.toString());
+
+        }
+        return list;
+    }
+
+    public List<FavoriteMusic> getLikes() {
+
+        try {
+            return albumsRepo.findAll();
+
+        } catch (Exception e) {
+
+            System.out.println(e.toString());
+
+            return null;
+
+        }
+
+    }
+    public int saveFavorite(@RequestBody FavoriteMusicRequestDto favorite){
+        FavoriteMusic music = albumsRepo.save(favorite.toEntity());
+
+        if(music != null) {
+            return 1;
+        }
+
+        else {
+            return 0;
+        }
+    }
+
+}
+
+