SpringMVC 响应数据

从controller页面跳转到jsp页面有多种方式。下面就进行一下分类

 

一、通过返回值来进行响应

1. String类型 字符串    springmvc会根据视图解析器自动分配地址来进行跳转

  @RequestMapping("/testString")
    public String testString(Model model){
        User user = new User();
        user.setUsername("张三");
        user.setPassword("123");
        user.setAge(19);
        model.addAttribute("user",user);
        System.out.println("String.....\"");
        return "success";
    }

2. void类型  这个类似于javaweb 的跳转方式了

@RequestMapping("/testReturnVoid")
public void testReturnVoid(HttpServletRequest request,HttpServletResponse response) 
throws Exception {

1.通过request请求转发
request.getRequestDispatcher("/WEB-INF/pages/success.jsp").forward(request, 
response);
2、也可以通过 response 页面重定向:
response.sendRedirect("testRetrunString")
3、也可以通过 response 指定响应结果,直接在页面显示
response.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
response.getWriter().write("json 串");
}

 

3 ModelAndView

@RequestMapping("/testReturnModelAndView")
public ModelAndView testReturnModelAndView() {
ModelAndView mv = new ModelAndView();
mv.addObject("username", "张三");
mv.setViewName("success");
return mv;
}

二、通过转发和重定向

 

1.forward 转发

注意如果用了 formward则路径必须写成实际视图 url,不能写逻辑视图。

它相当于request.getRequestDispatcher("url").forward(request,response)。使用请求

转发,既可以转发到 jsp,也可以转发到其他的控制器方法。

@RequestMapping("/testForward")
public String testForward() {
System.out.println("AccountController 的 testForward 方法执行了。。。。");
return "forward:/WEB-INF/pages/success.jsp";
}

2.redirect转发

它相当于“response.sendRedirect(url)”。需要注意的是,如果是重定向到 jsp 页面,则 jsp 页面不

能写在 WEB-INF 目录中,否则无法找到。

@RequestMapping("/testRedirect")
public String testRedirect() {
System.out.println("AccountController 的 testRedirect 方法执行了。。。。");
return "redirect:testReturnModelAndView";
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Spring MVC中,数据转换是指将请求参数转换为制器方法的参数类型或将控制器方法的返回值转换为响应数据的过程。Spring MVC提供了多种数据转换的方式,包括基本类型转换、日期类型转换、集合类型转换等。 1. 基本类型转换:Spring MVC可以自动将请求参数转换为控制器方法的基本类型参数,如字符串转换为整数、浮点数等。 2. 自定义类型转换:如果需要将请求参数转换为自定义的Java对象,可以使用自定义类型转换器。通过实现Converter接口或使用注解@Converter来定义类型转换器,然后在配置文件中进行注册。 3. 格式化:Spring MVC支持使用注解@DateTimeFormat对日期类型进行格式化,将请求参数按照指定的格式转换为日期对象。 4. 集合类型转换:当控制器方法的参数或返回值是集合类型时,Spring MVC可以自动将请求参数转换为集合对象或将集合对象转换为响应数据。可以使用注解@InitBinder对集合类型进行配置。 5. JSON数据转换:Spring MVC内置了对JSON数据的支持,可以将请求参数或响应数据以JSON格式进行转换。可以使用注解@ResponseBody将方法的返回值直接转换为JSON格式的响应数据。 6. XML数据转换:除了JSON数据,Spring MVC还支持将请求参数或响应数据以XML格式进行转换。可以使用注解@RequestBody将请求参数转换为XML格式的对象,使用注解@ResponseBody将方法的返回值转换为XML格式的响应数据

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值