본문 바로가기

spring framework14

[SpringFramework] RESTful방식의 @RestController 와 @ResponseBody란? 몇달전 본인은 프로젝를 진행하면서 클래스를 하나를 Controller로 두고, Controller클래스 내에 view return하는 메소드, RESTful방식으로 return 하는 메소드를 짬뽕해서 사용했다. 결과적으로 이런방식으로 하니 프로젝트가 커질수록 컨트롤러가 복잡하고 헷갈리는 참사가발생했다.... 이후 프로젝트를 다시 처음부터 하면서 RESTful방식에 대해 더 공부하게되었다. RESTful 어디서 많이는 들어봤지만 뭔지는 모르는 나에게는 애매하고 생소한 단어였다. 검색도 해보고 자료도 찾아보면서 정리를 해본다. @RestController의 동작방식 @RestController 는 @Controller 어노테이션과 @ResponseBody 어노테이션을 합쳐놓은 어노테이션이다. 클래스 상단에 .. 2018. 8. 5.
[Spring Framework] redirect(리다이렉트) vs forward(포워드) 리다이렉트 다른 페이지로 이동할 때 사용된다. 뜻 그대로인것 같다. 다시 곧장...? 리다이렉트를 알기위해서는 포워드 방식과 같이 알아야 한다. 들어만 봤지 매일 매일 헷갈리는 용어이다. 이번 기회에 딱 정리를 해야겠다. 검색을 하다 http://doublesprogramming.tistory.com/63 님의 블로그에 들어가봤는데 비유를 너무 잘하셔서 나도 정리를 해봐야겠다. 여기서 고객은 Client, 상담원은 Server , 123,124번은 URL주소가 되겠다 첫번째 사례 : forward 1. 고객이 123번을 누르고 고객센터의 상담원과 전화를 연결했다. 2. 상담원이 문의사항을 몰라 다른 상담원에게 해당문의사항의 답을 얻는다. 3. 상담원은 고객의 문의사항을 처리해준다. 두번째 사례 : red.. 2018. 7. 26.
[Spring Framework] @RequestMapping 파라미터 @RequestMapping에서 Get방식과 Post방식 1) GET방식 test.jsp //action=" "값은 컨트롤러의 @RequestMapping의 값과 매핑되고 ,GET방식으로 form 데이터를 전송하겠다. //name의 변수명은 VO와 매핑할 변수로 VO 변수명과 같아야 한다. HomeController.java @RequestMapping(value="/action",method=RequestMethod.GET) public String action(@ModelAttribute("member") MemberVO membervo){ return "action"; } 출력화면 test.jsp에서 정보를 입력후 submit하게 되면 컨트롤러에서 @RequestMapping("/action")으로.. 2018. 7. 25.
[Spring Framework] Form 데이터(폼 데이터) 데이터(커맨드) 객체 데이터(커맨드) 객체 @ModelAttribute 이용 데이터(커맨드) 객체를 이용하면 데이터가 많을 경우 간단하게 사용 할 수 있다. 커맨드 객체를 이용하게 되면 소스코드를 엄~청 줄일 수 있다. @RequestParam을 이용한 기존의 방식 public String test(Model model,@RequestParam("id") String id, @RequestParam("passwd") String passwd) { model.addAttribute("id",id); model.addAttribute("passwd",passwd); return "test"; } 데이터(커맨드) 객체를 이용한 방식 @ModelAttribute(" ")의 괄호에있는 변수명은 html태그에서 jstl 정규식을 사용하.. 2018. 7. 25.
[Spring Framework] Form 데이터(폼 데이터) @ReuqestParam @RequestParam 어노테이션 @RequestParam 어노테이션을 이용해서 데이터를 전송하는 방법에 대해서 알아보자. 1. @RequestParam + String 이용하는방법 @RequestMapping("/tests") //@RequestParam의 (" ") 괄호 안의 변수명과 url의 쿼리스트링 변수명과 같아야 한다. //@RequestParam으로 받은 파라미터값을 각각 id, passwd에 넣어준다. public String test(Model model,@RequestParam("id") String id, @RequestParam("passwd") String passwd) { model.addAttribute("id",id); model.addAttribute("passwd",pa.. 2018. 7. 25.
[Spring Framework] Form 데이터(폼 데이터) HttpServletRequest HttpServletRequest 인터페이스 HttpServletRequset : 클라이언트가 어떠한 요청을 할 때, 사용자가 요청한 데이터를 받는 객체. HttpServletRequest 인터페이스를 이용해서 데이터를 전송하는 방법에 대해 알아보자. 복습도 할겸 예제를통해 HttpServletRequst 인터페이스를 알아보자. HomeController.java @RequestMapping("/tests") public ModelAndView test(HttpServletRequest hreq){ ModelAndView mv = new ModelAndView(); mv.addObject("RequestURL", hreq.getRequestURL()); mv.addObject("RequestURI", h.. 2018. 7. 25.