@Controller和@RestController区别

@Controller主要用于返回指定的jsp或者html页面

@ResponseBody声明该方法返回数据会通过适当的转换器,转换为指定的格式之后直接发送给客户端,而不会在视图管理器中匹配视图。

@RestController相当于@Controller和@ResponseBody组合。直接将return数据返回给客户端,不匹配视图。

当需要返回指定视图页面时,应该用@Controller。

 

@Controller
public class MyController {
    @RequestMapping("/")
    public String input(){
        return "index";
    }

    @RequestMapping("/testJSON")
    @ResponseBody
    public List> tesJSON(@RequestBody Person user){
        System.out.println(user.getName()+"****"+user.getPass()+"****"+user.getAge());
        Map map=new HashMap<>();
        map.put("name","鱼香");
        map.put("pass","123456");
        map.put("age",25);
        List> alip=new ArrayList<>();
        alip.add(map);
        Map map1=new HashMap<>();
        map1.put("name","4");
        map1.put("pass","123456");
        map1.put("age",25);
        alip.add(map1);
        return alip;
    }
}
@RestController
public class MyController {

    @RequestMapping("/testJSON")
    public List> tesJSON(@RequestBody Person user){
        System.out.println(user.getName()+"****"+user.getPass()+"****"+user.getAge());
        Map map=new HashMap<>();
        map.put("name","鱼香");
        map.put("pass","123456");
        map.put("age",25);
        List> alip=new ArrayList<>();
        alip.add(map);
        Map map1=new HashMap<>();
        map1.put("name","4");
        map1.put("pass","123456");
        map1.put("age",25);
        alip.add(map1);
        return alip;
    }

}

 

你可能感兴趣的:(JavaWeb,java)