前言
本文旨在利用maven搭建ssm环境,而关于maven的具体内容,大家可以去阅读《Maven 实战》。其实园内这方面文章已有不少,那么为什么我还要重复造轮子呢?我只是想记录自己的实践过程罢了,附带着给别人以参考。对于别人的博文,看了固然好,要是能付之实践,那就更好了!
一直在对整个工程做一些配置上的优化,具体代码可以从我的github下载
基于目前spring-boot的火热,工程慢慢往springboot上转,码云地址:https://gitee.com/youzhibing/spring-boot-2.0.3
maven安装
安装过程挺简单的,去apache下载apache-maven的zip包,解压到一个目录下,如下图
接下来配置windows环境,右击我的电脑--》属性--》高级系统设置--》环境变量--》系统变量--》新建,如下图
就是你解压的maven的home目录;接着编辑系统变量的Path,如图
其实跟配置java环境是一样的,最后几个连续确定之后就好了,这几个确定一定要点,不然配置不会保存,更不会生效! home路径一定要写自己的,别搬我的呀!路径最好是拷贝,手动输入太容易出错了。
接下来验证环境是否配置成功,打开命令行,输入mvn -v 如果出现下图的信息,那么恭喜你,配置成功了!当然,信息可能有些许出入,如版本不同等,这些不用在意。
Eclipse(java ee版)集成maven
一般而言,新的eclipse都已经集成了maven,如果没有那么就安装,点击eclipse菜单栏Help->Eclipse Marketplace搜索关键字maven到插件Maven Integration for Eclipse 并点击安装即可,接下来将eclipse集成的maven换成我们自己的,而不用eclipse自带的,重新定位,点击Window -> Preference -> Maven -> Installation -> Add进行设置,如下图
设置完成,那么eclipse配置maven就完成了,myeclipse配置和这个是一样的。
创建ssm项目
选择建立Maven Project 选择File -> New -> Other,在New窗口中选择 Maven -> Maven Project;点击next,如下图
选择项目路径,如下图,然后next
选择项目类型 选择Artifact Id为maven-archetype-webapp那一项,如下图
输入Group ID和 Artifact ID,以及Package,具体Group ID和 Artifact ID代表什么,可以去阅读《Maven 实战》,Group ID相当于一个组织,而Artifact ID相当于这个组织下的一个具体项目,Packege的话会根据你的Group ID和Artifact ID生成一个默认的名称,就用默认的就可以,如下图
点finish之后,项目结构如下图
若目录结构和上面的有差别,那么将perspective改成Java模式就好了。上面的目录结构离标准的maven web结构还有一点差别,少了一个文件夹src/test/resources,我们手动创建下,右键项目根目录点击New -> Source Folder,建出这个文件夹,如下图:
Finish之后,项目结构图如下所示:
把项目变成Dynamic Web项目右键项目,properties --》Project Facets,点击Convert to faceted fro,勾上Dynamic Web Module,并将Version为2.3。(3.0为Java7的)。
设置部署程序集(Web Deployment Assembly) 上面步骤设置完成后,点击OK,再右键项目,选择properties --》Deployment Assembly,如下图
此处列表是,部署项目时,文件发布的路径。
(1)我们删除test的两项,因为test是测试使用,并不需要部署。
(2)设置将Maven的jar包发布到lib下。
Add -> JavaBuild Path Entries -> Maven Dependencies -> Finish
设置完成效果图
构建框架
在pom.xml中添加所需要的jar包,内容如下图
<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.lee.mvnbook</groupId>
<artifactId>maven-ssm-web</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>maven-ssm-web Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<!-- spring版本号 -->
<spring.version>4.0.2.RELEASE</spring.version>
</properties>
<dependencies>
<!-- spring核心包 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<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>
<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<