• 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
  • 相关阅读:
    runtime-给系统已有类添加属性
    解决自定义leftBarButtonItem返回手势失效的方法
    类和对象
    内存拷贝
    响应者链
    属性
    懒加载
    封装思想
    屏幕旋转
    block
  • 原文地址:https://www.cnblogs.com/wdh01/p/13288864.html
Copyright © 2020-2023  润新知