ੈ✩‧₊˚Computer Science/프론트엔드 | 백엔드
Controller parameter 정리 / 리턴 타입 정리
샨샨
2020. 11. 25. 22:37
반응형
controller parameter 정리
1. Request를 통해 파라미터 가져오기
@RequestMapping("/request")
String temp1(HttpServletRequest request)
{
String a = request.getParameter("p1");
String b = request.getParameter("p2");
System.out.println("p1 : " + p1);
System.out.println("p2 : " + p2);
return "data";
}
2.HttpServletRequest, HttpServletResponse 이용 (Servlet과 관련)
@RestController
public class SampleController {
@GetMapping("/sample")
public String hello(HttpServletRequest request, HttpServletResponse response){
return "hello";
}
}
3.MultipartRequest : 파일 업로드 시 이용
@RestController
public class Controller {
@PostMapping("/home")
public String hello(MultipartRequest request){
return "hello";
}
}
4.@RequestParam를 통한 직접 매칭
@RequestMapping( "/param")
String temp3(@RequestParam("a") String a, @RequestParam("b") int b)
{
System.out.println("a : " + a);
System.out.println("b : " + b);
return "data";
}
5.PathVariable 이용
@RequestMapping("/path/{home}/{home2}")
String temp5(@PathVariable("home") String home, @PathVariable("home2") int home2){
System.out.println(home);
System.out.println(home2);
return "data";
}
6. @ModelAttribute 이용
@RequestMapping(value="/user/add", method=RequestMethod.POST)
public String add(@ModelAttribute User user) {
userService.add(user);
...
}
Controller return type
1.ModelAndView
@Controller public class HelloController {
@RequestMapping("/hello")
public ModelAndView hello()
{
ModelAndView view = new ModelAndView();
view.setViewName("hello");
view.addObject("name", "Lim");
return view;
}
}
2.String
@Controller public class HelloController
{
@RequestMapping("/hello")
public String hello() {
return "hello";
}
3. Void
- URL과 View이름을 통일해서 사용해야한다.
@Controller public class HelloController
{
@RequestMapping("/hello")
public void hello()
{
}
}
4.@Responsebody
-return 값 : 단일 모델 오브젝트
@Controller public class HelloController
{
@RequestMapping("/hello")
@ResponseBody public String hello()
{
return "<html><body><h1>Hello, ResponseBody!</h1></body></html>";
}
}
반응형