zoukankan      html  css  js  c++  java
  • 基于Xml 配置的Spring MVC的基本搭建

    写这篇文章的目的一是巩固自己学到的知识,二是方便自己以后快速查找。

    由于这篇文章所写的内容过于基础,所以就只写搭建的过程,文章最后会附上参考文章的链接。

    搭建环境:

    1. IDEA

    2. Maven

    3. Tomcat

    搭建步骤:

    1. 创建maven-archetype-webapp项目,这个项目是maven的web项目

    2.在pom中添加sping mvc相关的依赖包,这个依赖包是我自己使用的,包含了单元测试和相关的mvc mock包:

      <dependencies>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-webmvc</artifactId>
          <version>4.3.9.RELEASE</version>
        </dependency>
    
        <!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/javax.servlet.jsp.jstl-api -->
        <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>jstl</artifactId>
          <version>1.2</version>
        </dependency>
    
        <dependency>
          <groupId>org.springframework.data</groupId>
          <artifactId>spring-data-jpa</artifactId>
          <version>1.10.1.RELEASE</version>
        </dependency>
    
        <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>javax.servlet-api</artifactId>
          <version>3.0.1</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>RELEASE</version>
        </dependency>
    
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-test</artifactId>
          <version>4.3.8.RELEASE</version>
          <scope>test</scope>
        </dependency>
    
        <dependency>
          <groupId>javax.servlet.jsp</groupId>
          <artifactId>javax.servlet.jsp-api</artifactId>
          <version>2.3.1</version>
        </dependency>
    
        <dependency>
          <groupId>org.mockito</groupId>
          <artifactId>mockito-core</artifactId>
          <version>2.8.47</version>
        </dependency>
    
      </dependencies>

    3. 编辑web.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
             version="3.1">
    
        <display-name>SpringMVCDemo Web Application</display-name>
    
        <!--注册DispatcherServlet-->
        <servlet>
            <servlet-name>appServlet</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>/WEB-INF/appServlet-context.xml</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
        <!--将DispatcherServlet映射到“/”-->
        <servlet-mapping>
            <servlet-name>appServlet</servlet-name>
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    
    </web-app>
    

    DispatcherServlet是Spring MVC的核心,它要负责将请求路由到其他的组件之中。DispatcherServlet会根据Servlet的名字找到一个文件,并基于该文件加载应用上下文。在我的web.xml中,Servlet的名字是appServlet,因此DispatcherServlet会从/WEB-INF/appServlet-context.xml文件中加载其应用上下文。

    4.在web.xml的同级目录下新建Spring 配置文件 (选中WEB-INF文件夹---右键---NEW---XML Configuration File---Spring Config),名称为appServlet-context.xml。

    <?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"
           xmlns:mvc="http://www.springframework.org/schema/mvc"
           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 http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    
        <!--指明controller所在包,并扫描其中的注解-->
        <context:component-scan base-package="com.home.web"/>
    
        <!--静态资源的访问-->
        <mvc:default-servlet-handler/>
    
        <!--开启注解-->
        <mvc:annotation-driven/>
    
        <!--ViewResolver视图解析器-->
        <bean id="jspViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
            <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
            <property name="prefix" value="/WEB-INF/pages/"/>
            <property name="suffix" value=".jsp"/>
        </bean>
    </beans>
    

      注意,这个配置文件的名称有规则:xxxx-context.xml。 其中xxxx必须和web.xml中<servlet-name>配置节中的名称保持相同,我的servlet-name是appServlet,所以配置文件的名称是appServlet-context.xml。  

    5. 在main文件夹下新建文件夹,名称为java,文件夹类型设置为Sources。

    6.在java文件夹下新建package,名称为com.home.web。然后在package里新建HomeController类:

    package com.home.web;
    
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.servlet.ModelAndView;
    
    /**
     * Created by Administrator on 2017/7/30.
     */
    @Controller
    @RequestMapping(value = "/home")
    public class HomeController {
    
        @RequestMapping(value = "/index")
        public String Index(){
            return "index";
        }
    }
    

    7.在WEB-INF文件夹下新建pages文件夹,添加一个jsp文件,名为index.jsp。

    好了,这样一个最简单的Spring MVC就搭建完成了。如果要运行,还要做一下配置,

    • 点击IDEA右上角下拉箭头---Edit Configurations---点击+号---Tomcat Server---Local
    • 选择完成后,在右边的窗口中的Deployment的tab页面中---+号---Artifact---选择第二个xxx:war exploded

    这样就配置完成了,点击IDEA右上角的绿色箭头运行。

    附件文件目录截图:

     参考文章链接:

    1. https://my.oschina.net/gaussik/blog/385697

    2. http://www.mkyong.com/spring3/spring-3-mvc-hello-world-example/

    源码下载:

    yonghoujishan.7z

  • 相关阅读:
    Luogu P3371 线段树1
    8-16模拟赛
    Luogu P1313 计算系数
    Luogu P1525 关押罪犯
    Luogu P1040 加分二叉树
    Luogu P1018 乘积最大
    Luogu P1541 乌龟棋
    BST,Splay平衡树学习笔记
    常见的逻辑错误
    行为认知疗法——十大认知错误
  • 原文地址:https://www.cnblogs.com/cs-js/p/7260179.html
Copyright © 2011-2022 走看看