项目名:"springmvc-demo",设置Maven版本,配置Maven仓库。

pop.xml
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>org.example</groupId>
 8     <artifactId>springmvc-demo-zhuangshuhui</artifactId>
 9     <version>1.0-SNAPSHOT</version>
10     <dependencies>
11         <dependency>
12             <groupId>junit</groupId>
13             <artifactId>junit</artifactId>
14             <version>4.13.2</version>
15             <scope>test</scope>
16         </dependency>
17         <dependency>
18             <groupId>org.springframework</groupId>
19             <artifactId>spring-webmvc</artifactId>
20             <version>5.2.13.RELEASE</version>
21         </dependency>
22         <dependency>
23             <groupId>javax.servlet</groupId>
24             <artifactId>servlet-api</artifactId>
25             <version>2.5</version>
26         </dependency>
27         <dependency>
28             <groupId>javax.servlet</groupId>
29             <artifactId>javax.servlet-api</artifactId>
30             <version>4.0.1</version>
31             <scope>provided</scope>
32         </dependency>
33     </dependencies>
34 
35 </project>
配置静态资源
pop.xml
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 5     <modelVersion>4.0.0</modelVersion>
 6 
 7     <groupId>org.example</groupId>
 8     <artifactId>springmvc-demo-zhuangshuhui</artifactId>
 9     <version>1.0-SNAPSHOT</version>
10     <dependencies>
11         <dependency>
12             <groupId>junit</groupId>
13             <artifactId>junit</artifactId>
14             <version>4.13.2</version>
15             <scope>test</scope>
16         </dependency>
17         <dependency>
18             <groupId>org.springframework</groupId>
19             <artifactId>spring-webmvc</artifactId>
20             <version>5.2.13.RELEASE</version>
21         </dependency>
22         <dependency>
23             <groupId>javax.servlet</groupId>
24             <artifactId>servlet-api</artifactId>
25             <version>2.5</version>
26         </dependency>
27         <dependency>
28             <groupId>javax.servlet</groupId>
29             <artifactId>javax.servlet-api</artifactId>
30             <version>4.0.1</version>
31             <scope>provided</scope>
32         </dependency>
33     </dependencies>
34 
35 
36     <build>
37         <resources>
38             <resource>
39                 <directory>src/main/java</directory>
40                 <includes>
41                     <include>**/*.properties</include>
42                     <include>**/*.xml</include>
43                 </includes>
44                 <filtering>false</filtering>
45             </resource>
46             <resource>
47                 <directory>src/main/resources</directory>
48                 <includes>
49                     <include>**/*.properties</include>
50                     <include>**/*.xml</include>
51                 </includes>
52                 <filtering>false</filtering>
53             </resource>
54         </resources>
55     </build>
56 
57 
58 </project>
配置核心文件
在"resources"文件夹下新建"File"文件:applicationContext.xml
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xmlns:mvc="http://www.springframework.org/schema/mvc"
 6        xsi:schemaLocation="http://www.springframework.org/schema/beans
 7            http://www.springframework.org/schema/beans/spring-beans.xsd
 8            http://www.springframework.org/schema/context
 9            https://www.springframework.org/schema/context/spring-context.xsd
10            http://www.springframework.org/schema/mvc
11            https://www.springframework.org/schema/mvc/spring-mvc.xsd
12        ">
13 
14     <!-- bean definitions here -->
15 
16 </beans>
添加SpringMVC配置内容放入"applicationContext.xml"文件中
1.加载注解驱动
1 <!-- 1加载注解驱动 -->
2 <mvc:annotation-driven/>
2.静态资源过滤
1 <!-- 2静态资源过滤 -->
2 <mvc:default-servlet-handler/>
3.视图解析器
<!-- 3视图解析器 -->
<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/"/>
    <property name="suffix" value=".jsp"/>
</bean>
applicationContext.xml:
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xmlns:mvc="http://www.springframework.org/schema/mvc"
 6        xsi:schemaLocation="http://www.springframework.org/schema/beans
 7            http://www.springframework.org/schema/beans/spring-beans.xsd
 8            http://www.springframework.org/schema/context
 9            https://www.springframework.org/schema/context/spring-context.xsd
10            http://www.springframework.org/schema/mvc
11            https://www.springframework.org/schema/mvc/spring-mvc.xsd
12        ">
13 
14     <!-- bean definitions here -->
17     <!-- 1加载注解驱动 -->
18     <mvc:annotation-driven/>
19 
20     <!-- 2静态资源过滤 -->
21     <mvc:default-servlet-handler/>
22 
23     <!-- 3视图解析器//配置前后缀 -->
24     <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
25         <property name="prefix" value="/WEB-INF/jsp/"/>
26         <property name="suffix" value=".jsp"/>
27     </bean>
28 
29 </beans>
代码结构图:

控制层新建controller包创建HelloController类:
HelloController:
 1 package Controller;
 2 
 3 import org.springframework.stereotype.Controller;
 4 import org.springframework.ui.Model;
 5 import org.springframework.web.bind.annotation.RequestMapping;
 6 
 7 @Controller
 8 
 9 public class HelloController {
10     @RequestMapping("/hello")///hello参数,请求地址
11     public String hello(Model model){
12         // Model 封装数据
13         model.addAttribute("msg","HELLO MY FIRST SPRING MVC PROJECT");
14         //打印出:这是我第一个SPRING MVC项目,用/hello请求
15         // 返回的字符串就是视图的名字 会被视图解析器处理
16         return "hello";
17     }
18 }
配置核心文件:applicationContext.xml
1 <!-- 自动扫描包,让指定包下的注解生效,由IOC容器统一管理 -->
2 <context:component-scan base-package="controller"/>
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:context="http://www.springframework.org/schema/context"
 5        xmlns:mvc="http://www.springframework.org/schema/mvc"
 6        xsi:schemaLocation="http://www.springframework.org/schema/beans
 7            http://www.springframework.org/schema/beans/spring-beans.xsd
 8            http://www.springframework.org/schema/context
 9            https://www.springframework.org/schema/context/spring-context.xsd
10            http://www.springframework.org/schema/mvc
11            https://www.springframework.org/schema/mvc/spring-mvc.xsd
12        ">
13 
14     <!-- bean definitions here -->
15 
16     <!-- 自动扫描包,让指定包下的注解生效,由IOC容器统一管理 -->
17     <context:component-scan base-package="Controller"/>
18     
19 
20 
21     <!-- 1加载注解驱动 -->
22     <mvc:annotation-driven/>
23 
24     <!-- 2静态资源过滤 -->
25     <mvc:default-servlet-handler/>
26 
27     <!-- 3视图解析器//配置前后缀 -->
28     <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
29         <property name="prefix" value="/WEB-INF/jsp/"/>
30         <property name="suffix" value=".jsp"/>
31     </bean>
32 
33 </beans>
在WEB-INF文件下jsp包中new一个"JSP/JSPX"文件"hello.jsp"
hello.jsp
 1 <%--
 2   Created by IntelliJ IDEA.
 3   User: Administrator
 4   Date: 2021/3/31
 5   Time: 14:28
 6   To change this template use File | Settings | File Templates.
 7 --%>
 8 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
 9 <html>
10 <head>
11     <title>Title</title>
12 </head>
13 <body>
14     ${msg}
15 </body>
16 </html>
1.配置前端控制器
 1 <!-- 配置前端控制器 -->
 2 <servlet>
 3     <servlet-name>springmvc</servlet-name>
 4     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 5 
 6 <!-- 配置初始化参数 -->
 7 <init-param>
 8     <param-name>contextConfigLocation</param-name>
 9     <param-value>classpath:applicationContext.xml</param-value>
10 </init-param>
11 
12 <!-- 设置启动级别 -->
13 <load-on-startup>1</load-on-startup>
14 
15 </servlet>
2.设置SpringMVC拦截请求
1 <!-- 设置SpringMVC拦截请求 -->
2 <servlet-mapping>
3     <servlet-name>springmvc</servlet-name>
4     <url-pattern>/</url-pattern>
5 </servlet-mapping>
3.配置中文乱码过滤器
 1 <!--  乱码过滤 -->
 2 <filter>
 3     <filter-name>encodingFilter</filter-name>
 4     <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
 5     <init-param>
 6         <param-name>encoding</param-name>
 7         <param-value>utf-8</param-value>
 8     </init-param>
 9 </filter>
10 <filter-mapping>
11     <filter-name>encodingFilter</filter-name>
12     <url-pattern>/*</url-pattern>
13 </filter-mapping>
web.xml
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
 3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4          xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
 5          version="4.0">
 6     <!-- 1.配置前端控制器 -->
 7     <servlet>
 8         <servlet-name>springmvc</servlet-name>
 9         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
10         <!-- 配置初始化参数 -->
11         <init-param>
12             <param-name>contextConfigLocation</param-name>
13             <!-- 读取文件夹 -->
14             <param-value>classpath:applicationContext.xml</param-value>
15         </init-param>
16         <!-- 设置启动级别,数字越小启动越早 -->
17         <load-on-startup>1</load-on-startup>
18     </servlet>
19 
20 
21     <!-- 2.设置SpringMVC拦截请求表示 -->
22     <servlet-mapping>
23         <servlet-name>springmvc</servlet-name>
24         <!-- / -->
25         <url-pattern>/</url-pattern>
26     </servlet-mapping>
27 
28     <!--  3.乱码过滤 -->
29     <filter>
30         <filter-name>encodingFilter</filter-name>
31         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
32         <init-param>
33             <param-name>encoding</param-name>
34             <param-value>utf-8</param-value>
35         </init-param>
36     </filter>
37     <filter-mapping>
38         <filter-name>encodingFilter</filter-name>
39         <url-pattern>/*</url-pattern>
40     </filter-mapping>
41 
42 </web-app>
导包
单击"File"选择"Project Structure..."打开项目构建管理栏
1.删除默认导好的包
点击"Artifacts"点击—号

2.添加war包
点击+号选择Web Application:Exploded -> From Modules…

弹出框,点击"OK".
点击Add Configuration… 进入运行配置框

点击+号选择"Tomcat Server"——"Local"

点击Configure选择自己电脑上的TomCat文件夹

按OK

点击Deployment——点击"+"号——选择"Artifact"

Application context改成 "/"

点击绿色的小三角形运行
执行结果

在浏览器上显示

在浏览器搜索栏上添加"hello",按回车键,可以看到设置好的值

原文:https://www.cnblogs.com/suisui2021/p/14602355.html