springmvc-Controller类的方法的不同返回值类型

1、返回ModelAndView

       @RequestMapping("/queryUser")
       public ModelAndView queryUser() {
             User user = userService.selectById(1);
             ModelAndView modelAndView = new ModelAndView();
             modelAndView.addObject("user",user);
             modelAndView.setViewName("user/user");
             return modelAndView;
        }

2、返回String

1)表示返回逻辑视图名,真正的视图(jsp路径)= 前缀+逻辑视图名+后缀

@RequestMapping("/queryUser")
        public String queryUser1(Model model) {
              User user = userService.selectById(1);
              model.addAttribute("user",user);
              return "user/user";
        }

2)重定向

@RequestMapping("/queryUser")
        public String queryUser1(Model model) {
              ......
              return "redirect:queryUser.action";
        }

3)转发

@RequestMapping("/queryUser")
        public String queryUser1(Model model) {
              ......
              return "forward:queryUser.action";
        }

3、返回void

在controller方法形参上可以定义request和response,使用request和response指定响应结果:

1)使用request转发页面:

request.getRequestDispatcher("queryUser.action").forward(request, response);

2)使用response重定向页面:

response.sendRedirect("queryUser.action");

3)通过response指定响应结果,例如响应json数据:

response.setCharaterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
response.getWriter().write("json串");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值