一、新建项目
新建项目,选择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加载网站后,测试结果如下
demo地址