本教程中,我们将教给大家如何创建一个基于Spring MVC 的 Maven Web Project。
用到的技术/工具:
1、Eclipse 4.9
2、Maven 3.6.2
3、Tomcat 8.5.34
4、JDK 1.8
5、Spring 4.3.14.RELEASE
2.1 新建Maven Project
打开Eclipse IDE,新建Maven Project,步骤:File->Project->Maven->Maven Project
在此不要勾选“Create a simple project(skip archetype selection)”,勾选了将会跳过模板选择,框架结构就需要自己手动去建了,不要勾选。接下来选择一下项目工程的路径
我们给项目命名“maven_webapp”,如果这个目录不存在,可以自己创建一个,选择这个文件目录
选择模板“maven-archetype-webapp”:
配置:Group Id一般指项目所属的组织机构,Artifact Id指项目名称,Package会根据前面的两项自动生成,接着下一步完成,一个Maven的Web项目就创建完毕了。
创建完成后,可以看一下项目的目录结构:
上图发现了两个问题:
1、 项目目录出现了错误红叉
2、 而且目录结构缺少java和test的结构目录
原因:打开index.jsp文件后,鼠标移到左边的红叉上,提示没有找到javax.servlet.http.HttpServlet ,这是没有Java Build Path 中没有引入Tomcat Server的原因。
2.2 添加Tomcat Server
两种方式:
1、右键->项目名称->Build Path->Configure Build Path->Java Build Path
2、菜单:Project->Properties->Java Build Path
Libraries中并没有Tomcat,所以需要“Add Library...”来添加
现在Libraries中已经添加了Tomcat。再来看一下项目的结构目录中不但红叉的错误消失了,而且增加了java和test的结构目录,让项目结构完整了。
2.3 配置pom.xml
引入依赖包:spring-web、spring-webmvc、commons-logging、servlet、jsp.jstl、taglibs
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.gg</groupId> <artifactId>maven_webapp</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>maven_webapp Maven Webapp</name> <url>http://maven.apache.org</url> <!-- 公共属性,方便控制,可通过类似于表达式EL一样引用 --> <properties> <spring.version>4.3.14.RELEASE</spring.version> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- 搭建Springmvc框架只需要引用spring-web,spring-webmvc两个包即可Maven会自动引用他们的依赖包 --> <!-- https://mvnrepository.com/artifact/org.springframework/spring-web --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <!-- Maven中通过类似与EL表达式一样可以引用上方配置公共属性 --> <version>${spring.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging --> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <dependency> <groupId>javax.servlet.jsp.jstl</groupId> <artifactId>jstl-api</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>taglibs</groupId> <artifactId>standard</artifactId> <version>1.1.2</version> </dependency> </dependencies> <build> <finalName>maven_webapp</finalName> </build> </project>