SpringMVC简单入门使用

SpringMVC

Spring MVC是Spring为展现层提供的基于MVC设计理念的优秀Web框架,是目前最主流的MVC框架之一。支持REST风格的URL请求。

Spring框架结构图:

在这里插入图片描述

简单使用SpringMVC:HelloWorld

1.创建普通的Maven项目,然后右键项目 Add Framework Support中添加Web Applicable 4.0版本。
2.在WEB-INF的web.xml中配置DispatcherServlet

<servlet>
        <!--DispatcherServlet是一个servlet,拦截所有请求-->
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--contextConfigLocation:指定SpringMVC配置文件路径位置
		不指定,默认在WEB-INF目录下会将SpringMVC配置名称命名为"'servlet-name'-servlet"。 比如:DispatcherServlet-servlet.xml
		-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>WEB-INF/springMVC.xml</param-value>
        </init-param>
        <!--load-on-startup:服务器启动的时候创建对象,值越小,越优先创建对象-->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <!-- /*与/都是拦截所有请求。
             /:会拦截所有请求但不会拦截*.jsp能保证jsp页面正常访问.
             /*:范围更大,*.jsp也会拦截,一旦拦截jsp页面就不会显示.
                -->
        <url-pattern>/</url-pattern>
    </servlet-mapping>

3.配置SpringMVC.xml文件:一般在WEB-INF目录下。

<?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:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
">

    <!--开启组件扫描-->
    <context:component-scan base-package="com.gz.controller"></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>
</beans>

4.创建一个入口;index.jsp

 <a href="hello">点击请求Hello</a>

5.写一个处理请求的处理器,并标识处理器:


/**
 * 声明bean对象,为一个控制器组件
 * @author Gz
 */
@Controller
public class HelloMvc {

    /**
     *映射请求的名称:1.使用@RequestMapping注解来映射请求的URL,
     *               2.返回值会通过视图解析器解析为实际的物理视图, 对于
     *               InternalResourceViewResolver 视图解析器会做出一下请求
     *                  2.1 通过 prefix + returnVal + suffix 这样的方式得到实际的物理视图, 然后做转发操作.
     *                  2.2 /WEB-INF/views/success.jsp
     * @return
     */
    @RequestMapping("/hello")
    public String firstMyMvc(){
        System.out.println("运行成功");
        //视图解析器自动拼接
        return "success";
    }
}

6.编写视图:success.jsp

<h2>成功</h2>

HelloWorld深度解析

1.请求流程图解:
在这里插入图片描述

  1. @RequestMapping注解可以使用在类上与方法上:
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)

3.流程分析图:
在这里插入图片描述

基本步骤:

  1. 客户端请求提交到DispatcherServlet
  2. 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
  3. DispatcherServlet将请求提交到Controller(也称为Handler)
  4. Controller调用业务逻辑处理后,返回ModelAndView
  5. DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
  6. 视图负责将结果显示到客户端
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值