SpringMVC Idea 搭建 部署war的详细过程

 更新时间:2025年01月17日 16:22:09   作者:荭色海湾  
本文介绍了如何在IntelliJ IDEA中使用Maven模板创建一个Web项目,并详细说明了如何配置web.xml、创建springmvc-servlet.xml和application.properties文件,以及如何使用Maven打包生成WAR文件并部署到Tomcat服务器,感兴趣的朋友跟随小编一起看看吧

1.创建 Idea项目

使用Maven模板 创建 webApp模板项目

2.导入依赖 

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.x</groupId>
  <artifactId>jetty-x-file-server</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>jetty-x-file-server Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
<!--    <dependency>-->
<!--      <groupId>jakarta.servlet</groupId>-->
<!--      <artifactId>jakarta.servlet-api</artifactId>-->
<!--      <version>6.0.0</version>-->
<!--      <scope>provided</scope>-->
<!--    </dependency>-->
<!--    <dependency>-->
<!--      <groupId>org.springframework</groupId>-->
<!--      <artifactId>spring-webmvc</artifactId>-->
<!--      <version>6.2.0</version>-->
<!--    </dependency>-->
<!--    <dependency>-->
<!--      <groupId>com.fasterxml.jackson.core</groupId>-->
<!--      <artifactId>jackson-databind</artifactId>-->
<!--      <version>2.17.2</version>-->
<!--    </dependency>-->
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.9.8</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-webmvc</artifactId>
      <version>5.3.18</version>
    </dependency>
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.4</version>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.11.0</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>3.1.0</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>jetty-x-file-server</finalName>
  </build>
</project>

3.web.xml更新至4.0

并且注册DispatcherServlet

<?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">
  <!--1.注册DispatcherServlet -->
  <servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--2.关联一个springmvc的配置文件:【servlet-name】-servlet.xml -->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc-servlet.xml</param-value>
    </init-param>
    <!--3.启动级别=1  -->
    <load-on-startup>1</load-on-startup>
  </servlet>
  <!--4. / 匹配所有的请求:(不包括.jsp) -->
  <!--5. /* 匹配所有的请求:(包括.jsp) -->
  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>

4.springmvc-servlet.xml

在resource目录下创建

<?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:mvc="http://www.springframework.org/schema/mvc"
       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/mvc
        http://www.springframework.org/schema/mvc/spring-mvc.xsd
        http://www.springframework.org/schema/context
        https://www.springframework.org/schema/context/spring-context.xsd"
>
    <!--1.注解驱动  若用jackson需要在用properties来注入-->
    <!--    JSON乱码问题-->
    <mvc:annotation-driven>
        <mvc:message-converters>
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
                <constructor-arg value="UTF-8"/>
            </bean>
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="objectMapper">
                    <bean class="org.springframework.http.converter.json.Jackson2ObjectMapperFactoryBean">
                        <property name="failOnEmptyBeans" value="false"/>
                    </bean>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>
    <!--2.静态资源-->
    <mvc:default-servlet-handler/>
    <!--3.扫描包    -->
    <context:component-scan base-package="com.x.jettyxfileserver"/>
    <!-- 文件上传配置   -->
    <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        <!--         请求的编码格式:必要和jsp的pageEncoding属性一致,以便正确读取表单的内容,默认为ISO-8859-1   -->
        <property name="defaultEncoding" value="utf-8"/>
        <!--           上传文件大小上限,单位为字节  (10485760=10M) -->
        <property name="maxUploadSize" value="10485760"/>
        <property name="maxInMemorySize" value="40960"/>
    </bean>
    <bean class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:application.properties</value>
            </list>
        </property>
    </bean>
</beans>

5.创建application.properties

在resource目录下

filePath=${FILE_PATH:C:\\Program Files\\jetty\\jetty-distribution-9.2.1.v20140609(ssl)\\webapps\\ROOT\\html\\resources}
#filePath=C:\\Users\\RJ\\Desktop\\file

配置好tomcat

选择exploded的 

配置应用上下文,保存就可以了

6.maven打包

直接 clean package 就好了

放入 tomcat webApps

目录下。它会自动解包,生成文件夹项目

到此这篇关于SpringMVC Idea 搭建 部署war的文章就介绍到这了,更多相关SpringMVC Idea 部署war内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java并发编程之如何优雅关闭钩子Shutdown Hook

    Java并发编程之如何优雅关闭钩子Shutdown Hook

    这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子Shutdown Hook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-04-04
  • java实现简单猜数字游戏

    java实现简单猜数字游戏

    这篇文章主要介绍了java实现简单猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • springboot 启动如何排除某些bean的注入

    springboot 启动如何排除某些bean的注入

    这篇文章主要介绍了springboot 启动如何排除某些bean的注入方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 用Java实现小球碰壁反弹的简单实例(算法十分简单)

    用Java实现小球碰壁反弹的简单实例(算法十分简单)

    下面小编就为大家带来一篇用Java实现小球碰壁反弹的简单实例(算法十分简单)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • springboot实用配置详细图文教程

    springboot实用配置详细图文教程

    SpringBoot从本质上来说就是Spring,它通过了一些自己的特性帮助我们简化了Spring应用程序的开发,下面这篇文章主要给大家介绍了关于springboot实用配置的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • 解决Lombok使用@Builder无法build父类属性的问题

    解决Lombok使用@Builder无法build父类属性的问题

    这篇文章主要介绍了解决Lombok使用@Builder无法build父类属性的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 2021最新IDEA的各种快捷键汇总

    2021最新IDEA的各种快捷键汇总

    掌握idea的各种快捷键,可以帮助我们开发程序,今天小编给大家带来几种比较常用的idea快捷键及一些快捷键介绍,对idea快捷键相关知识,感兴趣的朋友一起看看吧
    2021-05-05
  • Java高效实现电商产品排序实战

    Java高效实现电商产品排序实战

    这篇文章主要为大家介绍了Java高效实现电商产品排序实战,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Java8的Lambda和排序

    Java8的Lambda和排序

    这篇文章主要介绍了Java8的Lambda和排序,对数组和集合进行排序是Java 8 lambda令人惊奇的一个应用,我们可以实现一个Comparators来实现各种排序,下面文章将有案例详细说明,想要了解得小伙伴可以参考一下
    2021-11-11
  • Java图形界面超实用使用教程

    Java图形界面超实用使用教程

    在Java编程中图形界面应用程序是非常常见和重要的一部分,下面这篇文章主要给大家介绍了关于Java图形界面的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-01-01

最新评论