Maven搭建SSM框架
此笔记是在学习XXXSSM整合视频后的一般总结
Maven创建web项目
原来使用maven创建web项目,选择的是webapp模板,这里在创建Maven项目时,选中create a simple project(skip archetype selection)
此时的项目只是一个普通的java项目,需要把它变成一个web项目
然后右键项目,选中properties
中,在Project Facets
中,取消选中的Dynamic Web Module
,Apply
之后,再选中Dynamic Web Module
,测试,选择如下的红色框所示:
弹出如下所示的输入框,在Content directory
中输入src/main/webapp
(表示生成的web.xml
的位置),勾选上Generate web.xml deployment descriptor
创建好后,一个基本的web项目就成型了,也可能还需要对web.xml做一些响应的修改
pom.xml
创建好后,就需要导入jar包了,引入的jar包。需要引入的jar包包括:
1.Spring
2.SpringMVC
3.Mybatis
4.数据库连接池,驱动包
5.其它模块
- jstl
- servlet-api,注意其
scope
为provided
,表示服务器提供的有 - junit,注意其
scope
为test
- jackson,返回
json
数据用
6.其它可选的包,根据自己需求,导入的包,如
- mybatis generator的包,自动生成mybatis相关的mapper和sql
- mybatis的pagehelper,分页插件
- spring-test包,用于测试
- hibernate-validator,JSR303数据校验
一些注意点是:
1.在maven中依赖spring-webmvc
后,会自动导入如下的包,所以就不用导入其它的包了,可参考spring核心框架体系结构(各个jar包作用),来了解各个jar包之间的依赖关系:
- spring-webmvc
- spring-aop
- spring-beans
- spring-context
- spring-core
- commons-logging
- spring-expression
- spring-web
pom.xml
中导入的主要包如下:
<properties>
<!-- spring版本号 -->
<spring.version>4.1.1.RELEASE</spring.version>
<!-- mybatis版本号 -->
<mybatis.version>3.4.2</mybatis.version>
</properties>
<dependencies>
<!-- Springmvc Spring的包 -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring jdbc -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Spring 面向切面编程 -->
<!-- https://mvnrepository.com/artifact/org.springframework/spring-aspects -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>${spring.version}</version>
</dependency>
<!-- Mybatis -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>
<!-- Mybatis整合Spring的适配包 -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.1</version>
</dependency>
<!-- 数据库连接池 驱动的包 -->
<!-- https://mvnrepository.com/artifact/c3p0/c3p0 -->
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.41</version>
</dependency>
<!-- jstl, servlet-api, junit -->
<!-- https://mvnrepository.com/artifact/jstl/jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</