SpringMVC HelloWorld

一、SpringMVC 概述

  • Spring 实现 Web 模块,简化 Web 开发;
  • Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一 。
  • Spring3.0 后全面超越 Struts2,成为最优秀的 MVC 框架 。
  • Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请 求的控制器,而无须实现任何接口。
  • 支持 REST 风格的 URL 请求。
  • 采用了松散耦合可插拔组件结构,比其他 MVC 框架更具 扩展性和灵活性。

二、SpringMVC 入门

1、引入 jar 包

 2、在 web.xml 中配置前端控制器 DispatcherServlet

<welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <!-- SpringMVC 的思想是:有一个前端控制器拦截所有请求,并智能转发请求, 这个拦截器是一个 Servlet ,因此应该在 Web.xml 
         文件中进行配置拦截所有请求 -->
    <!-- The front controller of this Spring Web application, responsible for 
        handling all application requests -->
    <servlet>
        <servlet-name>springDispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <!-- 指定配置文件位置 -->
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
        <!-- 启动加载延迟时间,值越小,优先级越高,越优先创建 -->
        <load-on-startup>1</load-on-startup>
    </servlet>

    <!-- Map all requests to the DispatcherServlet for handling -->
    <servlet-mapping>
        <servlet-name>springDispatcherServlet</servlet-name>
        <!-- / 拦截所有 ,拦截所有请求,不拦截jsp ,/* 会拦截 *。jsp,页面无需拦截,否正无法显示页面  -->
        <url-pattern>/</url-pattern>
    </servlet-mapping>
View Code

3、加入 SpringMVC 配置文件

    <!-- 扫描所有包 -->
    <context:component-scan base-package="org.wdh01"></context:component-scan>
    <!-- 配置视图解析器 -->
    <bean
        class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/pages/"></property>
        <property name="suffix" value=".jsp"></property>
    </bean>
View Code

4、编写处理请求的处理器,并标识为处理器

@Controller
public class FirstController {
    /**
     * 配置处理请求地址
     * @return
     */
    @RequestMapping("/hello")
    public String firstController() {
        System.out.println(" 请求收到了,正在处理。。。。");
        return "success";
    }
}
View Code

5、编写视图

  ogin.jsp 添加按钮

<a href="helloworld">helloworld SpringMvc</a>

/WEB-INF/pages/ 创建 响应页面

<h3>Success Page</h3>

6、运行效果

 7、运行流程

/**
     * SpringMvc HelloWorld 运行流程
     * 1、客户发送请求:http://localhost:8080/1springmvc_helloworld/hello
     * 2、来到 tomcat 服务器
     * 3、前端控制器 springDispatcherServlet 获取请求
     * 4、@RequestMapping 标注放的请求地址与获取的请求地址进行匹配,决定使用具体的方法
     * 5、前端控制器找到目标处理类和目标方法并执行
     * 6、执行完目标方法获取返回值
     * 6、视图解析器拿到返回值拼
     * 7、视图解析器通过地址转发响应页面
     * /
View Code
原文地址:https://www.cnblogs.com/wdh01/p/13288864.html