项目名:"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