SpringMVC的第一个工程
1.创建项目
- 新建空白项目-MVC_Project
2.在当前项目新建一个Maven架构的模块-HelloWorld
- 完善Maven的工程目录
编辑pom.xml
- 内容
<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>HelloWorld</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
- 手动刷新
添加Webapp
打开Project Structure,依次操作
- 重新设置WEB-INF的目录,让WEB-INF作为webapp的子目录
- 结构
- webapp和WEB-INF的区别
WEB-INF是webapp的安全目录(客户端无法访问的目录,只有服务端可以访问),通常需要通过springmvc配置文件配置资源映射,webapp可以通过浏览器直接访问
2. 编辑配置文件
编辑WEB-INF中的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">
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 配置SpringMVC配置文件的位置和名称-->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:HelloWorld-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorld</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>
- maven工程的一般要存放在resources
- 在resources目录下手动创建HelloWorld-servlet.xml
编辑HelloWorld-servlet.xml
- 先新建一个控制器类org.example.controller.HelloController
package org.example.controller;
public class HelloController {
}
- 编辑HelloWorld-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"
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/context https://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="org.example.controller"></context:component-scan>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" >
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
</beans>
- 通过注解,把HelloController交给Spring的IOC容器
@Controller
public class HelloController {
@RequestMapping("/")
public String index(){
return "index";
}
}
新建index.jsp
配置tomcat
OK, 然后RUN
- 可以,第一个工程出现了结果。