文章目录
前言
本文将尽可能地详细阐述SSM的搭建过程,并以此Demo展开对涉及SpringMVC、SpringBoot、Spring原理和操作知识,进行逐渐深入的探讨和学习、梳理。
为方便记忆和理解手顺,解决实际项目中的问题,做三点阐述:
1、在使用Eclipse管理Java项目时,主要涉及到JDK、JRE、Tomcat、Maven等的安装、配置和使用。以JDK为例,在本文中可以看到,JDK的安装和配置需要考虑 :
(1)、本机的环境配置
(2)、在Eclipse中的引入(Window–>Preferences下)
(3)、在项目中的引入(项目右键或者alt+enter -->Java build path)。
其他的诸如Maven等也是如此。当项目出现环境问题时,不妨从这三方面着手寻找。
2、需要说明的是,在配置Tomcat本地环境变量时,变量名用的 CATALINA_HOME 而非其他。
说明
A、本文使用的环境和版本
1、JDK 11.0.2
2、JRE 11.0.2
3、Maven 3.6.2
4、Tomcat 9.0
5、Win10
6、Eclipse 2019-06
B、需要注意,A中的版本匹配关系的问题。
一、环境准备
1、确定JDK版本
cmd进入C:Users\Administrator
java -version
上图:当前JDK版本为jdk-11.0.2
2、确认Eclipse 当前JDK的编译版本也是jdk-11.0.2
Windows–>Preferences–>Java–>Compiler
Eclipse版本和本机安装版本相同
3、确认Eclipse 安装的JRE版本是11.0.2
Windows–>Preferences–>Java–>Compiler–>Installed JRES
4、确认Maven的安装版本和在Eclipse中的安装版本
cmd进入C:Users\Administrator
mvn -v
Windows–>Preferences–>Maven–>Installations
5、确定Eclipse中的Maven配置
Windows–>Preferences–>Maven–>User Setting
二、创建基于Maven的SpringMVC项目
1、File–>new–>Maven Project
然后出现项目层次结构如下图
2、打开POM文件,添加依赖
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
</dependency>
引入JAVAEE 7.0
3、调整项目构建
即将JDK添加到项目当中
项目右键–>Preferences–>Java Build Path
4、调整项目编译环境
即确保使用的是JDK 11.0
项目右键–>Preferences–>Java Complier
(快捷键 Alt+Enter)
5、调整Project Facets
项目右键–>Preferences–>Project Facets
Dynamic Web Module:java的web系统有多种类型,比如静态的和动态的,然后动态的java web project要设置dynamic web module,也就是动态网页模型,必须要和对应的服务器搭配好了才能跑,版本对应如下
dynamic web module 2.4 对应Tomcat 5.5
dynamic web module 2.5 对应Tomcat 6.0
dynamic web module 3.0 对应Tomcat 7.0或更高
6、打开src/main/webapp/WEB-INF/web.xml
把web.xml的内容换成
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
</web-app>
7、再次调整Project Facets
点击OK–>Apply and Close
8、修改POM文件
打开POM文件
(1)、删除节点
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
(2)、新增节点
注意: 在下述节点中,要注意版本兼容问题。当项目中出现环境问题时,下述节点中涉及到的版本问题,也是检视的方向之一。
<properties>
<spring.version>4.3.13.RELEASE</spring.version>
<mybatis.version>3.2.6</mybatis.version>
<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>
</properties>
<!--单体测试-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!--springcore 是Spring中最核心的包-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
//spring-web
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>
<!--spring-jdbc 数据库连接-->
<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>
<!--AOP-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring.version}</version>
</dependency>
<!--包含支持缓存Cache(ehcache)、JCA、JMX、 邮件服务(Java Mail、COS Mail)、任务计划Scheduling(Timer、Quartz)方面的类。-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<!--mybatis包引入-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>${mybatis.version}</version>
</dependency>