1. 准备开发工具: IDEA(2017.1.4), Maven(3.5.3).
2. 新建Maven模块, 选择骨架选择…webapp, 这步不多说.
3. 新建好Module后发现src目录结构如下:没有java和resources.
3.1 main->右键->新建两个directory: java, resources;
3.2 File->Project Structure打开项目结构, 如下
将java文件夹和resources分别添加为Sources和Resources. 添加成功后注意两个文件夹的图标都有变化.
4. 添加Tomcat库依赖
4.1 还是打开项目结构, 选择项目, 依赖, 添加. 如下图
4.2 选择Library, 添加Tomcat.
5. pom.xml文件配置-----关键步骤
<?xml version="1.0" encoding="UTF-8"?>
<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>com.zzuli</groupId>
<artifactId>ssm</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>ssm Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<!--版本属性-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<junit-version>4.11</junit-version>
<servlet-version>3.1.0</servlet-version>
<jsp-version>2.2</jsp-version>
<jstl-version>1.2</jstl-version>
<spring-version>4.1.6.RELEASE</spring-version>
<aspectjweaver-version>1.8.6</aspectjweaver-version>
<mybatis-version>3.2.7</mybatis-version>
<mybatis-spring-version>1.2.3</mybatis-spring-version>
<log4j-version>1.2.17</log4j-version>
<mysql-connector-java-version>5.1.38</mysql-connector-java-version>
<jackson-databind-version>2.4.1</jackson-databind-version>
<commons-fileupload-version>1.3.3</commons-fileupload-version>
<commons-io-verson>2.2</commons-io-verson>
</properties>
<!--依赖-->
<dependencies>
<!-- junit单元测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit-version}</version>
<scope>test</scope>
</dependency>
<!-- servlet, jsp, jstl相关 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>${jsp-version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>${jstl-version}</version>
</dependency>
<!-- spring相关 mvc, jdbc, aop -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring-version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectjweaver-version}</version>
</dependency>
<!--MyBatis-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis-version}</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>${mybatis-spring-version}</version>
</dependency>
<!--日志包-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j-version}</version>
</dependency>
<!--数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector-java-version}</version>
</dependency>
<!--jackson处理json字符串用-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson-databind-version}</version>
</dependency>
<!--文件上传, 下载-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>${commons-fileupload-version}</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
<!--Tomcat7插件, 启动项目用 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
</project>
6. 编写java代码.
6.1 搭建三层框架.
分别是: 实体类, dao层接口(mapper), service层接口, service实现类, controller.
具体如下:
完整代码略.
6.2 编写配置文件.
6.2.1 首先编写Mapper.xml配置文件, 这个文件很有意思.
***在resources下新建目录 com/zzuli/mapper, 也就是上图中UserMapper接口所在包名. 但是注意新建文件夹时要想一步到位必须使用斜杠分隔, 不能打点, 否则最后点击运行Mapper.xml文件不能被加载到类路径里.也就是说编译成功后Mapper.xml文件和Mapper.xml文件是放在同一目录下的. 这与之
前直接将xml文件放在mapper包下一样.
6.2.2 其次就是applicationContext.xml, db.properties, log4j.properties,springmvc.xml
都是按照之前的配置去配, 基本无变化.
6.2.3 最后不要忘了配置web.xml, 这个配置也无改变.
6.3 编写jsp页面.
在webapp目录下, 右键->新建jsp.
7. 运行项目
这一步也就是在pom.xml文件里配置那个Tomcat插件起的作用.