1.首先建立一个基本的maven项目
Maven命令行构建JavaWeb应用–参数解释 引自jiangbai333.github.io
1 | mvn archetype:generate -DgroupId=com.spring -DartifactId=SpringMVC -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false -DarchetypeCatalog=internal |
运行上面命令后,将在当前目录建立一个名称为SpringMVC
的maven项目目录,结构如下: 1
2
3
4
5└─src
└─main
├─resources
└─webapp
└─WEB-INF
2.构建maven项目骨架
上面并不是一个完整的maven项目骨架,接下来我们手动完成项目骨架,将目录补全为: 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19└─src
├─main
│ ├─java
│ │ └─com
│ │ └─spring
│ │ ├─common
│ │ ├─controller
│ │ ├─dao
│ │ ├─mbo
│ │ └─service
│ ├─resources
│ │ ├─mybatis
│ │ │ └─mbo
│ │ └─spring
│ └─webapp
│ ├─META-INF
│ └─WEB-INF
│ └─page
└─test
目录功能如下
- main 项目主目录
- java.com.spring
- common 存放公共的类
- controller 存放控制器类
- service 存放业务逻辑类
- dao 存放数据操作类
- resources 资源目录
- spring spring配置文件
- mybatis mybatis配置文件
- mbo 存放 mybatis Sql映射文件
- webapp 存放web应用源代码xml、html、jsp等
- META-INF
- WEB-INF
- page
- java.com.spring
- test maven 测试目录 结构与main一致即可
应该说明一点,各个目录的功能,并不是由目录名字决定的。之所以这样命名,并且“赋予相应的功能”只是为了达成一个共同的开发标准。这对团队开发是非常重要的!如果你开心,完全可以用service目录存放控制器,controller目录存放业务逻辑,甚至把所以文件都放在同一个目录下!
3.补全pom.xml文件,利用maven添加spring依赖
pom.xml
位于项目根目录(\SpringMVC)1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78<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>SpringMVC</groupId>
<!-- 这里用来项目运行名 -->
<artifactId>SpringMVC</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>SpringMVC</name>
<description/>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<spring.version>4.1.6.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.1</version>
</dependency>
<!-- spring用到的包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
<configuration>
<version>3.1</version>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
</project>
4.编辑servlet运行配置、spring框架运行配置
web.xml
:servlet运行配置,存放于SpringMVC\src\main\webapp\WEB-INF\
目录下
1 | <?xml version="1.0" encoding="UTF-8"?> |
applicationContext.xml
:spring主配置文件,存放于SpringMVC\src\main\resources\spring\
目录下
Spring ApplicationContext容器介绍 引自极客学院wiki
applicationContext.xml模块化处理spring配置文件 引自360doc
1 | <?xml version='1.0' encoding='UTF-8' ?> |
applicationContext-mvc.xml
:spring子配置文件,存放于SpringMVC\src\main\resources\spring\
目录下
Spring MVC静态资源处理 引自”行在途中”个人博客
SpringMVC初探视图解析器 引自”夏日的雪花”个人博客
SrpingMVC mvc:annotation-driven 标签 引自”starscream”个人博客
1 | <?xml version='1.0' encoding='UTF-8' ?> |
至此,一个springmvc开发环境已经搭建完毕