大纲摘要:

  1、Springmvc介绍

  2、入门程序

  3、Springmvc架构讲解

    a) 框架结构

    b) 组件说明

  4、Springmvc整合mybatis

  5、参数绑定

    乱码问题解决

    a) Springmvc默认支持的类型

    b) 简单数据类型

    c) Pojo类型

    d) Pojo包装类型

    e) 自定义参数绑定

  Springmvcstruts2的区别

一、springMVC介绍

  springMVC是一个表现层框架

  作用:从请求中获取传入的参数

     将处理后的结果数据返回给页面显示

SpringMVC运行流程:

springMVC第一天——入门、整合与参数绑定

//把数据和标签拼装进行显示的过程叫做渲染

大致流程:(引用自http://blog.csdn.net/u014010769/article/details/47354529)

  第一步:发起请求到前端控制器(DispatcherServlet)

  第二步:前端控制器请求HandlerMapping查找 Handler

           可以根据xml配置、注解进行查找

  第三步:处理器映射器HandlerMapping向前端控制器返回Handler

  第四步:前端控制器调用处理器适配器去执行Handler

  第五步:处理器适配器去执行Handler

  第六步:Handler执行完成给适配器返回ModelAndView

  第七步:处理器适配器向前端控制器返回ModelAndView

           ModelAndView是springmvc框架的一个底层对象,包括Model和view

  第八步:前端控制器请求视图解析器去进行视图解析

           根据逻辑视图名解析成真正的视图(jsp)

  第九步:视图解析器向前端控制器返回View

  第十步:前端控制器进行视图渲染

           视图渲染将模型数据(在ModelAndView对象中)填充到request域

  第十一步:前端控制器向用户响应结果

二、入门程序

  版本:Springmvc4.1.3

  需求:

    使用springmvc实现商品列表的展示。(此处演示只使用静态数据)

  导包:(独立运行springMVC的jar包)

springMVC第一天——入门、整合与参数绑定

   此时来试试直接配置前端控制器并启动服务器(装了springIDE插件后将变得非常简单,一步到位配置)

  <servlet>
      <servlet-name>springMVC</servlet-name>
      <!-- 在webmvc.jar里面servlet的包里面找 ,复制全路径名去掉class即可-->
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <!-- tomcat启动时即加载,12345代表顺序 -->
      <load-on-startup>1</load-on-startup>
      <!-- 如果没有指定核心配置文件,默认会去找servlet-name+ -servlet.xml
          此处即使springMVC-servlet.xml
          一般而言,会在项目目录下新建配置文件夹 source folder config
       -->
  </servlet>
  <servlet-mapping>
      <servlet-name>springMVC</servlet-name>
      <url-pattern>*.action</url-pattern>
  </servlet-mapping>

//此时会报配置文件/WEB-INF/xxx.xml未找到的异常

   创建 source folder ,并在里面创建springMVC.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xmlns:context="http://www.springframework.org/schema/context"
    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
        http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
        http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd">
</beans>

  //这里暂时只引入约束,具体内容待补充

  在web.xml中前端控制器的servlet下指定核心配置文件的路径等信息

    当然,也可以使用默认的配置文件的位置,name就是<servlet-name>-servlet.xml

 <!-- 初始化参数 ,指定核心配置文件路径
             spring-servlet.xml因为被配置在servlet的初始化过程中,
             所以如果不初始化servlet,
             那么spring-servlet.xml是不会被发现的
         -->
         <init-param>
             <param-name>contextConfigLocation</param-name>
             <param-value>classpath:springMVC.xml</param-value>
         </init-param>

  此时完整的web.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>springMVC01</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <!-- springMVC前端控制器 -->
  <servlet>
      <servlet-name>springMVC</servlet-name>
      <!-- 在webmvc.jar里面servlet的包里面找 ,复制全路径名去掉class即可-->
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 初始化参数 ,指定核心配置文件路径
             spring-servlet.xml因为被配置在servlet的初始化过程中,
             所以如果不初始化servlet,
             那么spring-servlet.xml是不会被发现的
         -->
         <init-param>
             <param-name>contextConfigLocation</param-name>
             <param-value>classpath:springMVC.xml</param-value>
         </init-param>
      <!-- tomcat启动时即加载,12345代表顺序 -->
      <load-on-startup>1</load-on-startup>
      <!-- 如果没有指定核心配置文件,默认会去找servlet-name+ -servlet.xml
          此处即使springMVC-servlet.xml
          一般而言,会在项目目录下新建配置文件夹 source folder config
       -->
       
  </servlet>
  <servlet-mapping>
      <servlet-name>springMVC</servlet-name>
      <url-pattern>*.action</url-pattern>
  </servlet-mapping>

</web-app>
View Code

相关文章:

  • 2021-09-18
  • 2021-12-13
  • 2022-02-09
  • 2021-06-04
  • 2021-09-25
猜你喜欢
  • 2022-12-23
  • 2021-10-02
  • 2021-11-02
  • 2021-07-17
  • 2021-10-25
  • 2022-01-23
  • 2022-12-23
相关资源
相似解决方案