Spring框架总结(6)

SpringMVC概述&搭建&Request请求参数获取和发送(数据模型)

  1. SpringMVC
    1. Spring提供的控制器
    2. 是表现层(控制层)的一个目前最流行的MVC框架;
    3. 采用非侵入式设计;
    4. 与Struts2相比,其性能更好:主要因为Struts2处理请求是基于类(对象)的,而SpringMVC基于方法
  2. SpringMVC的两个控制器
    1. 前端控制器:由SpringMVC来提供DispatcherServlet,它用来接收所以请求
    2. 后端控制器:业务控制器;由开发人员编写,通常使用@Controller(@RequestMapping())
  3. 开发SpringMVC的步骤
    1. 导包
    2. 创建WEB-INF文件夹,下拷贝web.xml;在web.xml中加入前端控制器(“ / ”表示只不拦截jsp)
    3. 为SpringMVC定义一个配置文件,他的名字是<servlet-name>-servlet.xml,并将它放在webapp/WEB-INF/下(放在这里是因为WEB-INF是安全的,外部不能直接访问)
    4. 在上述文件(example-servlet.xml)加入
    5. 定义一个后端控制器(放在上述扫描所有控制器的包下com.oracle.web)
    6. WEB-INF下新建jsp,名为:success.jsp(同上图返回值),<body>键入内容进行测试:你好,这是第一个SpringMVC
    7. 启动服务器,浏览器地址栏键入:http://localhost:8080/springMVC0727/hello
    8. 浏览器返回给我们的正是success.jsp里的内容
      1. 这是因为视图解析器给我们返回的字符串 success 添加前缀 /WEB-INF/jsp/ + success + 后缀 .jsp 对应到了先前建好的 /WEB-INF/jsp/success.jsp 文件
  4. @RequestMapping 注解
    1. 作用:给请求做映射
    2. 他可以用在类和方法上
  5. 关于请求的限制
    1. @RequestMapping的常用参数
      1. value:url
      2. method:可指定哪个方法适用(POST,GET)
      3. params:参数的映射,可指定必须传递(没有)哪些参数,参数取值(不等于哪个值)
        1. 如:param,!param,param=xxx,param!=xxx
      4. headers:请求头的限制
  6. 如何获取请求参数值
    1. @RequestParam:请求参数(例子为获得表单提交来的name="name"的参数值)
    2. @PathVariable:通过它来获得请求路径中的参数
    3. @CookieValue:获得cookie的信息
    4. @RequestHeader:获得请求头的信息
    5. POJO(建议使用)
    6. 支持原生ServletAPI:HTTPServletRequest,Session等
  7. 数据模型的处理方法(向request中发送数据)
    1. ModelAndView:这个类型封装了数据和视图,可以在Controller中定义一个ModelAndView对象,向此对象中加入数据,同时设置视图(实际开发用的不太多)
    2. Model:通过参数来定义
      1. model.addAttribute(key, value)
    3. Map(最好用):定义在参数中
      1. map.put(key, value)

猜你喜欢

转载自blog.csdn.net/addkai/article/details/81232504
今日推荐