zoukankan      html  css  js  c++  java
  • springmvc学习(四)

    重新复习了一下springmvc

    • 从如何创建一个简单的springmvc 例子,
    • springmvc执行流程,配置
    • springmvc 如何接受请求参数
    • requestMapping的使用

          之前粗略了解springmvc如何绑定 基本参数  对象 等,今天说一说springmvc的返回值

    1. 返回ModelAndView
      @RequestMapping(value = "index")
          public ModelAndView index() {
              ModelAndView mv = new ModelAndView();
              //设置jsp类容 返回前端请求
              mv.addObject("result", "后台返回index1");
              //设置视图名字
              mv.setViewName("result");
              return mv;
          }

      jsp内容:

      <%@ page language="java" contentType="text/html; charset=UTF-8"
          pageEncoding="UTF-8"%>
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      <html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>输出提示</title>
      </head>
      <body>
      ${ result }
      </body>
      </html>

       

    2. 返回String 类型返回的是(视图名):
      @RequestMapping(value = "index1")
          public String index1(Model model) {
              model.addAttribute("result", "后台返回String类型");
              return "result";
          }

      所有的请求 默认都会有 model 通过 model.addAttribut可以设置值 (如果不用model 同样可以 返回  只是返回的是一个 空的页面) result 是 视图名称(我这边是 result.jsp)
      jsp页面:

      <%@ page language="java" contentType="text/html; charset=UTF-8"
          pageEncoding="UTF-8"%>
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
      <html>
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>输出提示</title>
      </head>
      <body>
      ${ result }
      </body>
      </html>

      还有一种类似于请求转发或者重定向的方式:

      @RequestMapping(value = "disString")
          public String disString(Model model) throws ServletException, IOException {
              model.addAttribute("result", "信息");
              System.out.println("执行请求");
              //此种方法返回类似 重定向 或者请求转发的功能
              return "forward:disResponse.action";
          }


    3. 返回值void:
      1:可以单独的处理一个逻辑业务 什么也不返回,但是一般来说执行完一个请求 都会有页面的跳转 (成功 或者失败 最少应该有吧) 如果实在不需要也可以
      2:前面说过 springmvc  是基于servlet的  servlet 可以通过 HttpServletRequest 和HttpServletResponse  请求转发:
      @RequestMapping(value = "disRequest")
          public void disRequest(HttpServletRequest request, HttpServletResponse response)
                  throws ServletException, IOException {
              request.setAttribute("result", "request的方法请求转发");
              request.getRequestDispatcher("/WEB-INF/jsp/result.jsp").forward(request, response);
      
          }

      3:通过重定向的方式 返回

      @RequestMapping(value = "disResponse")
          public void disResponse(HttpServletRequest request, HttpServletResponse response)
                  throws ServletException, IOException {
              response.sendRedirect("disRequest.action");
              System.out.println("执行请求");
          }

    以上就是关于springmvc返回值类型的不同情况,如果有哪里不多 或者需要补充的  可以留言。。帮助即使更正

  • 相关阅读:
    第一章 监控系统入门
    第十八章 Tagging_Redis6.2.1 服务器部署
    第十五章 ACL安全策略
    第十七章 Redis常见管理命令
    第五章 监控系统zabbix快速监控一台主机
    第十九章 Redis6.2.1脚本安装
    第三章 监控系统zabbix4.2官方源安装
    第十六章 Redis6.0其他新功能
    CSS教程:div垂直居中的N种方法
    css 文本两端对齐
  • 原文地址:https://www.cnblogs.com/920913cheng/p/10169574.html
Copyright © 2011-2022 走看看