1. MVC设计模式
  2. SpringMVC框架简介
  3. SpringMVC基本使用
  4. SpringMVC的设计架构
  5. 参数传递:view-to-controller, controller-to-view
  • MVC设计模式

    MVC设计模式是在软件开发中中经常使用的一种设计模式,也称为ModelII开发模式。

    Model : 模型,JavaBean组件

    View : 视图,用于展示数据:jsp,html,模板技术(freemarker, velocity)

    Controller : 控制器,接收客户端请求,调用模型响应客户请求,选择视图展示,servlet充当控制器:SpringMVC, Struts2, jsf

    SpringMVC入门使用

  • 执行流程图

    springMVC简介

    springMVC是个控制器框架,也称为MVC框架。优势:和spring可以无缝整合。

    控制器框架一般会提供哪些功能?

  • 参数封装:比如表单数据自动封装到实体类中
  • 页面跳转:逻辑名称
  • 异常处理:
  • 国际化处理:
  • 等等。。。。。。。
  • springMVC的使用步骤

  • 下载并部署jar包:web  webmvc + spring的包
  • 在web.xml中配置核心控制器:DispatcherServlet, 监听器
  • 编写springMVC的配置文件spring-mvc.xml: 控制器、视图解析器
  • 编写控制器:注解,在springmvc的配置文件中配置控制器
  • 编写视图页面
  • 部署运行
  • spring注解

    使用springMVC的注解驱动,首先需要配置:

    SpringMVC入门使用

    @Controller : 将JavaBean标识为控制器

    @RequestMapping : 请求映射,可以用在类和方法上

    @InitBinder : 实现类类型转换器的注册

    @RequestParam : 处理参数和方法参数不同名的情况

    spring参数封装

    view-to-controller

  • 基本类型的参数封装:比如Integer, String, Boolean,直接定义为方法参数SpringMVC入门使用
  • 封装到模型对象中:直接将模型对象作为方法参数,客户端的参数名称必须和模型对象的属性名保持一致:SpringMVC入门使用
    1. 日期类型如何封装
      1. 在模型类的属性行添加注解:SpringMVC入门使用
      2. 在控制中添加一个绑定的方法:SpringMVC入门使用
  • 如何向集合封装数据:List
    客户端的参数命名:options[0].opt
  • 使用ModelAndView对象:addObjectSpringMVC入门使用
  • 使用ModelMap、Model、Map,会自动将数据放入request作用域SpringMVC入门使用
  • 将数据放入session作用域SpringMVC入门使用
  • 如何实现页面的重定向

    重定向的地址是不走视图解析器:viewResolver

    return “redirect:success.jsp”; 重定向到jsp

    return “redirect:/user/index”; 重定向到控制器

    如何进行乱码处理:

    web.xml中配置编码过滤器:CharacterEncodingFilter

    放过静态资源

    SpringMVC入门使用

    springMVC请求处理流程:

    SpringMVC入门使用

  • DispatcherServlet:核心控制器,不负责处理请求
  • HandlerMapping:处理器映射,把 Url 和控制器建立映射关系, user/index
  • HandlerAdapter : 处理器适配器,相当于一个环绕通知,比如调用方法之前进行参数封装;方法执行完毕以后负责将ModelMap中的数据转换到request作用域中。
  • Handler:处理器,controller,一个控制器可以编写n个业务方法
  • ModelAndView:handler的返回值,模型和视图
  • ViewResolver:视图解析器,负责查找到视图并跳转

相关文章:

  • 2021-05-28
  • 2021-05-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-13
  • 2021-09-16
  • 2021-11-06
  • 2021-05-29
  • 2021-04-01
相关资源
相似解决方案