一、新建项目
新建项目,选择maven project
点击下一步
选择 maven-archetype-webapp
输入Group Id,Artfact Id 和 Version ,俗称GAV
新建之后,maven项目会报一个错误,如下
通过提示信息可知是由于找不到HttpServlet类,可通过导入Tomcat到工作目录或者通过Maven添加HttpServlet类所在的servlet-api.jar。
二、修改pom.xml文件
在pom.xml的dependencies节点中加入下面内容
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>compile</scope> </dependency>
这样就不会报错了
现在通过maven添加SpringMVC所需jar包
在pom.xml的dependencies节点中加入下面内容
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>4.1.2.RELEASE</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>4.1.2.RELEASE</version> <scope>compile</scope> </dependency>
这样子,pom.xml文件就配置好了.
把pom.xml保存一下,eclipse就会加入相关的依赖,加载完毕后,就可以看到Maven Dependencies目录下添加了很多jar包
三、配置web.xml
web.xml内容配置如下
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>spring-mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <!-- 这里的servlet-name和上面的要一致. --> <servlet-name>spring-mvc</servlet-name> <!-- 这里就是url的匹配规则, / 就是匹配所有 --> <url-pattern>/</url-pattern> </servlet-mapping> </web-app>
如上配置会自动去WEB-INF下寻找'servlet-name'-servlet.xml(此处对应为spring-servlet.xml),具体内容如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" 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-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <!-- 下面是配置扫描包的位置,包名为com.maskkk,也就是说,我们的试图解析器应该放在com.maskkk包下. --> <context:component-scan base-package="com.test.testmvc" /> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <!-- 前缀,我们的视图文件应该放到/WEB-INF/view/目录下,这里我们需要在WEB-INF下面创建view文件夹 --> <property name="prefix" value="/WEB-INF/view/" /> <!-- 设置后缀为.jsp --> <property name="suffix" value=".jsp" /> </bean> </beans>
现在发现目录结构中没有src/main/java和src/test/java。后通过查阅终得出解决方案。
在项目上右键选择properties,然后点击Java build path,在Librarys下,编辑JRE System Library,选择workspace default jre就可以了。
然后编写控制器
内容如下
package com.test.testmvc;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class TestController {
@RequestMapping("/Hello")
public String hello() {
return "Hello";
}
}
添加view
内容如下
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h1>Hello World!</h1> </body> </html>
使用tomcat加载网站后,测试结果如下