一、简介

  1、SpringMVC和Spring的关系:

      >软件开发的三层架构: web层【表示层、表现层】---->Service层---->Dao[DataBase Access Object]---->数据库!

      >SpringMVC实际上是Spring的一个子模块,我们用SpringMVC来代替这个JavaWEB部分!

      >MVC:也是一种设计模式:M:Model【模型】-->V[View]--->C[Controller]!

        Model用来封装数据的,

        View:用来显示数据, Controller:用于接收前端页面发送的请求,然后调用Service层处理,拿到处理结果,将该结果返回给前端页面!

      >SpringMVC:相当于MVC架构中的C以及V!

      >JavaEE-->J2EE

  2、SpringMVC有什么优势?

      >Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一。

      >Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架。

      >Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。

      >支持 REST 风格的 URL 请求。GET POST PUT DELTE

      >采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性.

      >目前主流的开发软件,说白了,大家都在用!

  3、SpingMVC是基于SpingMVC4.x

二、SpringMVC的HelloWorld快速入门

  1、加入JAR包:

–commons-logging-1.1.3.jar
–spring-aop-4.0.0.RELEASE.jar
–spring-beans-4.0.0.RELEASE.jar
–spring-context-4.0.0.RELEASE.jar
–spring-core-4.0.0.RELEASE.jar
–spring-expression-4.0.0.RELEASE.jar
–spring-web-4.0.0.RELEASE.jar
–spring-webmvc-4.0.0.RELEASE.jar

  2、配置前端控制器【DispatcherServlet】

   <!-- The front controller of this Spring Web application, responsible for handling all application requests -->
  <!--向服务器注册前端控制器! -->
  <servlet>
    <servlet-name>springDispatcherServlet</servlet-name>
    <!--DispatcherServlet指的是SpringMVC的前端控制器!,给服务器使用,创建servlet对象! -->
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!-- 初始化参数contextConfigLocation用于指定SpringMVC配置文件的路径以及名称 -->
8     <init-param>
9       <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc.xml</param-value>
    </init-param>
    <!-- 数字0或者大于0的数字表示的是:在服务器启动的时候创建Servlet对象,而不是第一次访问的时候创建
    小于0的数字指的是:在第一次访问的时候创建Servlet对象.
    在数字大于O的情况下,数字越小,优先级越高!
    -->
    <load-on-startup>1</load-on-startup>
  </servlet>   <!-- Map all requests to the DispatcherServlet for handling -->
  <!-- 用 servlet-mapping指定请求映射的路径-->
  <servlet-mapping>
    <servlet-name>springDispatcherServlet</servlet-name>
    <!-- 用url-pattern指定拦截 的请求路径! -->
    <url-pattern>/</url-pattern>
  </servlet-mapping>

  3、创建SpringMVC的配置文件并添加要扫描的包

      注意:1.创建SpringMVC配置文件的名字要和上面在web.xml文件中指定的名字一致!

         2.我们创建SpringMVC配置文件的时候使用的是Spring Bean Configuration File创建的,不是XML!

   <!-- 配置SpingMVC容器要扫描的包! -->
  <context:component-scan base-package="com.neuedu.controller"></context:component-scan>

  4、在springMVC扫描的包下创建控制器类[Controller/Handler],注意要加入@Controller注解

   /**
  * 我们通过@RequestMapping做请求URL的映射!
  * @return
  */
  @RequestMapping("/sayHello")
  public String sayHello(){
    return "/WEB-INF/views/success.jsp";
  }

  注意:在类的方法上我们使用的是@RequestMapping,然后在括号里指定请求url的请求路径!

  5、创建页面!

    注意:1.当我们不用init-param指定springMVC配置文件的路径好位置的时候,SpringMVC默认会去/WEB-INF/<servlet-name>-servlet.xml

        一般手动配置为类路径下(src路径下):classpath:springmvc.xml,

   <init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>

      2.配置视图解析器

   <!--InternalResourceViewResolvers 是视图解析器 ,它会将逻辑视图转换成实际的物理视图,做一个转发操作!
  也就是说具体步骤:prefix + 方法的返回值 + suffix-->
  <!-- /WEB-INF/views/success.jsp -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/views/"></property>
    <property name="suffix" value=".jsp"></property>
  </bean>

      3.请求一个SpringMVC的流程!

最新文章

  1. Spring6:基于注解的Spring MVC(上篇)
  2. sql查询单个银行账号重复
  3. nginx server中的server_name配置的域名在客户机上无法访问
  4. iOS真机调试的验证项
  5. 【Android】Android部分问题记录
  6. c# 二维码 显示
  7. V$LATCH_PARENT和V$LATCH_CHILDREN
  8. openlayers4 入门开发系列之地图工具栏篇(附源码下载)
  9. PHP调用Python接口过程中所遇到的问题
  10. chrome-performance页面性能分析使用教程
  11. WebLogic 8的安装与配置详谈
  12. How Flyway works
  13. putty 链接亚马逊服务器
  14. luogu1081 [NOIp2012]开车旅行 (STL::multiset+倍增)
  15. [转]01分数规划算法 ACM 二分 Dinkelbach 最优比率生成树 最优比率环
  16. David Silver 强化学习原理 (中文版 链接)
  17. 【xsy1116】数学题 奥数题
  18. jdbc连接各种数据库字符串
  19. java——arr == null || arr.length == 0
  20. JS中的执行环境和作用域

热门文章

  1. OO设计基本原则
  2. ansible命令详解
  3. jquery slideDown效果
  4. Hibernate中的一些注解的学习
  5. IDEA启动缓慢且运行卡顿
  6. 【FZU2280】Magic
  7. 【bzoj1016】[JSOI2008]最小生成树计数
  8. JavaScript(JS)实现省市联动选择下拉列表
  9. SpringAOP02 自定义注解
  10. 框架面试题:谈谈我对Spring IOC与DI的理解