Skip to content
Snippets Groups Projects
Select Git revision
  • dff1ac9bd1f9a6f9d47155087b90d8a3171e1386
  • main default protected
2 results

MyspringwebController.java

Blame
  • MyspringwebController.java 1.78 KiB
    package kr.ajousw.myspringweb.controller;
    
    import java.util.List;
    
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.DeleteMapping;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import jakarta.transaction.Transactional;
    import kr.ajousw.myspringweb.dto.FavoriteMusicRequestDto;
    import kr.ajousw.myspringweb.dto.MusicList;
    import kr.ajousw.myspringweb.entity.FavoriteMusic;
    import kr.ajousw.myspringweb.service.MusicService;
    
    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;
    
    
    @RestController
    public class MyspringwebController {
        @Autowired
        MusicService service;
    
        @RequestMapping("/")
    	public String index() {
    		return "Greetings from Spring Boot!";
    	}
    
        @GetMapping(value="/musicSearch/{name}")
        public MusicList musicSearchByPath(@PathVariable String name){
            return service.searchMusic(name);
        }
    
        @GetMapping(value="/musicSearch")
        public MusicList musicSearchByParam(@RequestParam(value="term") String name){
            return service.searchMusic(name);
        }
    
        @GetMapping(value="/likes")
        public List<FavoriteMusic> getLikes(){
            return service.getLikes();
        }
    
        @PostMapping(value="/likes")
        @Transactional
        public int postLikes(@RequestBody FavoriteMusicRequestDto favorite){
            return service.saveFavorite(favorite);
        }
    
        @DeleteMapping(value = "/likes/{id}")
        public void deleteLikes(@PathVariable String id) {
            service.deleteFavorite(id);
        }
    }