zoukankan      html  css  js  c++  java
  • 1. SpringMVC 简介

    SpringMVC 是一种基于 Java 的实现 MVC 设计模型的请求驱动类型的轻量级 Web 框架,属于 SpringFrameWork 的后续产品,已经融合在 Spring Web Flow 中。 SpringMVC 已经成为目前最主流的MVC框架之一,并且随着Spring3.0 的发布,全面超越 Struts2,成为最优秀的 MVC 框架。它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口。同时 它还支持 RESTful 编程风格的请求

    需求:客户端发起请求,服务器端接收请求,执行逻辑并进行视图跳转。

    开发步骤:

    ① 导入SpringMVC相关坐标

    ② 配置SpringMVC核心控制器DispathcerServlet

    ③ 创建Controller类和视图页面

    ④ 使用注解配置Controller类中业务方法的映射地址

    ⑤ 配置SpringMVC核心文件 spring-mvc.xml

    ⑥ 客户端发起请求测试

    我们开始实操一下:

    ① 导入Spring和SpringMVC的坐标

            <!--Spring坐标-->
            <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-context</artifactId>
                    <version>5.0.5.RELEASE</version>
            </dependency>
            <!--SpringMVC坐标-->
            <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-webmvc</artifactId>
                    <version>5.0.5.RELEASE</version>
            </dependency>

    别忘记导入Servlet和Jsp的坐标

    <!--Servlet坐标-->
    <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.3</version>
    </dependency>
    <!--Jsp坐标-->
    <dependency>
    <groupId>javax.servlet.jsp</groupId>
    <artifactId>jsp-api</artifactId>
    <version>2.1</version>
    </dependency>

    ② 在web.xml配置SpringMVC的核心控制器

    我们要用SpringMVC的前端控制器 那么我们是不是需要设置它Servlet 所以现在设置一下 前端控制器【分发器】的Servlet:

    注意了 下面代码写死的东西就是写死的 说什么都没用

    <!DOCTYPE web-app PUBLIC
     "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
     "http://java.sun.com/dtd/web-app_2_3.dtd" >
    
    <web-app>
      <display-name>Archetype Created Web Application</display-name>
    
    <!-- 这里配置一个Servlet -->
      <servlet>
    <!--  名字你随便 就是和以前配置的一样即可  -->
        <servlet-name>DispatcherServlet</servlet-name>
    <!--  这个写死的 是SpringMVC的前端控制器(分发器)  -->
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--  配置初始化参数  -->
        <init-param>
    <!--   初始化参数名 【写死的】   -->
          <param-name>contextConfigLocation</param-name>
    <!--  初始化参数值  SpringMvc的配置文件(容器) -->
          <param-value>classpath:spring-mvc.xml</param-value>
        </init-param>
    
    <!-- 优先级 、 这个随便加不加 一般都是加上 1 最先. -->
        <load-on-startup>1</load-on-startup>
      </servlet>
    
    <!-- 就是说 全部网址请求过来 都要经过这个前端控制器(分发器) -->
      <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>
    </web-app>

    ③ 创建Controller和业务方法 

    创建个 控制器包 包下随便写个控制器类,其实这个控制器 就相当于是一个 Servlet ,但是这个控制器(分发器) 要一些注解:

    TestController .java:
    package com.bihu.Controller;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    public class TestController {
    
        @RequestMapping("/go")
        public String GoUrl(){
            System.out.println("执行了Controller的GoUrl方法 证明你访问了 xxx/go");
            //返回字符串 会自动跳转到 s1.jsp 页面!
            return "s1.jsp";
        }
    
    }

    然后你得写个s1.jsp 可以给他跳转:

    s1.jsp:

      

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>ok!</title>
    </head>
    <body>
        <h2>恭喜你! 体验了SpringMVC 最基本简单的 一个 流程! </h2>
    </body>
    </html>

    然后你得配置一下SpringMVC容器,设置一下他扫描注解的范围:【记得配置Context头部哪里】

    <?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">
        <!--  配置注解扫描器 注意这个是SpringMVC的配置文件  配置文件要分开 规范点!  -->
        <context:component-scan base-package="com.bihu"/>
    </beans>

    所以呢 重点还是 SpringMVC 容器的配置 和 web.xml 的配置,该写死的就得写死哦 

    因为报错过几次 所以知道了 他的原理就是 一个 监听器 然后 默认的方式是Get请求

    本文来自博客园,作者:咸瑜,转载请注明原文链接:https://www.cnblogs.com/bi-hu/p/14938938.html

  • 相关阅读:
    前端总结--性能优化
    Vue面试中,经常会被问到的面试题/Vue知识点整理
    面试怎么样?才会容易进入到心仪公司了
    Vuex,从入门到入门
    当面试官问你“有什么缺点”时,应如何体面的回答?
    Linux下文件搜索、查找、查看命令
    线程池运行机制
    win10右键很慢
    Linux 安装 Tomcat7
    Tomcat / Nginx 跨域
  • 原文地址:https://www.cnblogs.com/bi-hu/p/14938938.html
Copyright © 2011-2022 走看看