一个SpringMVC实例的完整实现步骤

目录

环境准备

项目搭建

创建项目

打包加依赖

 配置web.xml

 创建springMVC配置文件

配置视图解析器(这步需要写)

写类

配置tomcat

总结


环境准备

首先,需要确保已经安装了Java开发环境和Maven(或者Gradle)构建工具。接着,将引入SpringMVC相关的依赖,包括spring-webmvc和其他必要的库。

<dependencies>
    <!-- servlet -->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.1</version>
    </dependency>
<!-- jsp-->
    <dependency>
        <groupId>javax.servlet.jsp</groupId>
        <artifactId>jsp-api</artifactId>
        <version>2.2</version>
    </dependency>
<!--标签-->
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>jstl</artifactId>
        <version> 1.2</version>
    </dependency>
    <!--springmvc -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>5.2.8.RELEASE</version>
    </dependency>
    <!-- junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
    </dependency>
</dependencies>

项目搭建

创建项目

通过Maven创建一个新的SpringMVC项目,并设置好基本的项目结构和配置文件。

创建父项目

创建子项目(创建普通maven项目,然后右键添加框架支持)

  添加框架支持,选择web应用程序(4.0),这样做的好处是可以选择版本号

 

当使用Maven模板创建一个Web项目时,通常会使用Maven的webapp模板来生成项目结构,这种情况下会自动生成web.xml文件。此时需要修改web.xml文件(下图为maven骨架生成的web.xml),将下面的xml复制到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_4_0.xsd"
         version="4.0">
</web-app>

打包加依赖

  

 

在使用Maven构建的Web项目中,通常不需要手动添加lib文件夹。这是因为Maven会自动管理项目的依赖库,并将它们下载到本地的仓库中。当项目编译、打包时,Maven会自动将所需的依赖库打包进war包或者jar包中,因此无需手动管理lib文件夹。

然而,有时候可能还是需要手动添加lib文件夹,比如:

  1. 非Maven依赖:如果项目中引入了一些非Maven管理的第三方依赖,这些依赖可能无法通过Maven直接管理,需要手动下载并添加到lib文件夹中。

  2. 特殊需求:有些特殊情况下,可能需要手动管理项目的依赖,比如需要使用一些特定版本的依赖库,而Maven默认下载的版本不符合要求。

总的来说,在大多数情况下,使用Maven可以很好地管理项目的依赖,避免了手动管理lib文件夹带来的麻烦。如果发现自己经常需要手动管理lib文件夹,可以考虑检查项目的依赖管理方式,看看是否有更好的解决方案。

 配置web.xml

配置DispatchServlet:DispatcherServlet是springMVC的核心:请求分发器,前端控制器

它主要负责加载 SpringMVC 的配置。它也是一个 Servlet,遵守 Servlet 规范。

在web.xml文件中配置DispatcherServlet来启用Spring MVC框架。

<?xml version="1.0" encoding="UTF8"?>
<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_4_0.xsd"
         version="4.0">
<!-- 配置DispatchServlet:这个是springMVC的核心:请求分发器,前端控制器   -->
    <servlet>
        <servlet-name>springmvc</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--DispatcherServlet要绑定spring的配置文件 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc-servlet.xml</param-value>
        </init-param>
<!--启动级别:1        -->
        <load-on-startup>1</load-on-startup>
    </servlet>

<!-- 在springMVC中,
   /:只匹配素有的请求,不会去匹配jsp页面
   /*:匹配素有的请求,包括jsp页面-->
    <servlet-mapping>
        <servlet-name>springmvc</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

 创建springMVC配置文件

在Spring MVC中,通常会创建一个用于配置Spring MVC的XML文件,该文件通常被命名为"spring-servlet.xml"("spring"是自定义的前缀,可以根据需要进行更改)。在这个文件中,可以配置处理器映射、视图解析器、拦截器等内容。

在 src/resources 资源目录下创建 SpringMVC的配置文件 springmvc-servlet.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

</beans>

 配置处理器映射器和处理器映射器(这步是为了理解原理用的,可以不写)

配置视图解析器(这步需要写)

在Spring MVC中,视图解析器用于将逻辑视图名称解析为实际的视图(例如JSP页面、Thymeleaf模板等)。可以通过配置视图解析器来定义视图的位置和格式。

<?xml version="1.0" encoding="UTF8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<!--实际开发中不需要写映射器和适配器-->
<!-- 处理器映射器  -->
    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
<!-- 处理器适配器-->
    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
<!-- 视图解析器-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="InternalResourceViewResolver">
        <!--前缀-->
        <property name="prefix" value="/WEB-INF/jsp"/>
        <!--后缀-->
        <property name="suffix" value=".jsp"/>
    </bean>
    
<!-- BeanNameUrlHandlerMapping:bean   -->
    <bean id="/hello" class="com.dynamic.controller.HelloController"></bean>
</beans>

写类

public class HelloController implements Controller {
  
    public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
        ModelAndView mv = new ModelAndView();
        //业务代码
        String result="HelloSpringMVC";
        mv.addObject("msg",result);
        //视图跳转
        mv.setViewName("test");
        return mv;
    }
}

将类交给SpringIOC容器,注册bean(这一步在前面的xml中已经加上了,实际步骤应该在这里写的)

<bean id="/hello" class="com.dynamic.controller.HelloController"></bean>

配置tomcat

在一个典型的Spring MVC应用中,需要将应用部署到一个Servlet容器中,而Tomcat就是一个常用的Servlet容器之一。在配置Tomcat时,需要确保应用能够在Tomcat中正确运行。

通常情况下,配置Tomcat涉及以下几个步骤:

  1. 将应用打包成WAR文件:Spring MVC应用通常被打包成WAR文件,该文件包含了应用的所有代码、配置文件和资源。

  2. 配置web.xml文件:在WAR文件中,web.xml文件用于配置Servlet、Filter、Listener等Web组件,并指定Spring的DispatcherServlet。

  3. 部署WAR文件到Tomcat:将打包好的WAR文件部署到Tomcat的webapps目录下,Tomcat会自动解压并部署你的应用。

  4. 启动Tomcat:启动Tomcat服务器,让应用在Tomcat中运行起来。

虽然在现代的Spring Boot应用中,通常不需要显式地配置Tomcat,因为Spring Boot内嵌了Tomcat(或其他Servlet容器),但在传统的Spring MVC应用中,可能还需要进行一些配置来确保应用能够正确地在Tomcat中运行。

总的来说,配置Tomcat是为了将你的应用部署到一个Servlet容器中,让应用可以通过HTTP协议对外提供服务。

 

总结

在本文中,通过一个简单的实例介绍了SpringMVC的基本用法,涉及了项目搭建、控制器编写、视图设计以及配置DispatcherServlet等方面。希望本文能够帮助小伙伴们快速入门SpringMVC,并对其有一个基本的了解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值