diff --git a/src/main/java/kr/ajousw/myspringweb/controller/MyWebController.java b/src/main/java/kr/ajousw/myspringweb/controller/MyWebController.java
index 34772dd2f23e63f5f743948497e0164beacd0174..8bfd7be42d09b165016104123cfb50997b37e5c1 100644
--- a/src/main/java/kr/ajousw/myspringweb/controller/MyWebController.java
+++ b/src/main/java/kr/ajousw/myspringweb/controller/MyWebController.java
@@ -1,67 +1,42 @@
 package kr.ajousw.myspringweb.controller;
 
-import java.io.IOException;
 import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.client.RestTemplate;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
 
 import kr.ajousw.myspringweb.dto.FavoriteMusicRequestDto;
 import kr.ajousw.myspringweb.dto.MusicList;
 import kr.ajousw.myspringweb.entity.FavoriteMusic;
-import kr.ajousw.myspringweb.repository.FavoriteRepository;
+import kr.ajousw.myspringweb.service.MusicService;
 
 @RestController
 public class MyWebController {
     @Autowired
-    FavoriteRepository albumsRepo;
+    MusicService service;
 
     @GetMapping(value="/musicSearch/{term}")
-    public String musicSearch(@PathVariable String term) {
-        RestTemplate restTemplate = new RestTemplate();
-        String url = "https://itunes.apple.com/search?term=" + term + "&entity=album";
-
-        try {
-            String res = restTemplate.getForObject(url, String.class);
-            ObjectMapper mapper = new ObjectMapper();
-            MusicList list = mapper.readValue(res, MusicList.class);
-            String ret = mapper.writeValueAsString(list);
+    public MusicList musicSearchByPath(@PathVariable String term) {
+        return service.musicSearch(term);
+    }
 
-            return ret;
-        } catch(IOException e) {
-        System.out.println(e.toString());
-        }
-        return "{\"resultCount\":0, \"results\":[]}";
+    @GetMapping(value="/musicSearch")
+    public MusicList musicSearchByParam(@RequestParam(value="term") String term) {
+        return service.musicSearch(term);
     }
 
-    //Get Favorite Music list from Database
-    @GetMapping(value="/likes") 
+    @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;
-        }
-    }
-}
+        return service.saveFavorite(favorite.toEntity());
+    } 
+}
\ No newline at end of file
diff --git a/src/main/java/kr/ajousw/myspringweb/service/MusicService.java b/src/main/java/kr/ajousw/myspringweb/service/MusicService.java
new file mode 100644
index 0000000000000000000000000000000000000000..20c068621bc3d85ca43a328d4a92a4b04f682dac
--- /dev/null
+++ b/src/main/java/kr/ajousw/myspringweb/service/MusicService.java
@@ -0,0 +1,51 @@
+package kr.ajousw.myspringweb.service;
+
+import java.io.IOException;
+import java.util.List;
+
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.client.RestTemplate;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+import kr.ajousw.myspringweb.dto.MusicList;
+import kr.ajousw.myspringweb.entity.FavoriteMusic;
+import kr.ajousw.myspringweb.repository.FavoriteRepository;
+import lombok.RequiredArgsConstructor;
+
+@Service
+@Transactional
+@RequiredArgsConstructor
+
+public class MusicService {
+    private final FavoriteRepository albumsRepo;
+    RestTemplate restTemplate = new RestTemplate();
+
+    public MusicList musicSearch(String term){
+        RestTemplate restTemplate = new RestTemplate();
+        String url = "https://itunes.apple.com/search?term=" + term + "&entity=album";
+        try {
+            String res = restTemplate.getForObject(url, String.class);
+            ObjectMapper mapper = new ObjectMapper();
+            MusicList list = mapper.readValue(res, MusicList.class);
+            return list;
+        } catch(IOException e) {
+            System.out.println(e.toString());
+        }
+        return null;
+    }
+
+    public List<FavoriteMusic> getLikes(){
+        try {
+            return albumsRepo.findAll();
+          } catch (Exception e) {
+            System.out.println(e.toString());
+            return null;
+          }      
+    }
+    public int saveFavorite(FavoriteMusic favoriteMusic){
+        FavoriteMusic music = albumsRepo.save(favoriteMusic);
+        return music != null ? 1 : 0;
+    }
+}