1)新建模块
2)拷贝原始项目中对应的相关内容到ssm_pojo模块中:实体类(Pojo)、配置文件(无)
1)新建模块
2)拷贝原始项目中对应的相关内容到ssm_dao模块中
(1)数据层接口(Dao)。
(2)配置文件:保留与数据层相关配置文件(分页插件在配置中与SqlSessionFactoryBean绑定,需要保留)。
(3)pom.xml:引入数据层相关坐标,删除spingmvc相关坐标(sping、mybatis、spring整合mybaits、mysql、druid、pagehelper、直接依赖已在本地仓库安装好的ssm_pojo)。
1)新建模块
2)拷贝原始项目中对应的相关内容到ssm_service模块中
(1)业务层接口与实现类(Service、ServiceImpl)。
(2)配置文件:保留与数据层相关配置文件。
(3)pom.xml:引入数据层相关坐标即可,删除springmvc相关坐标(spring、junit、spring整合junit、直接依赖ssm_dao、间接依赖ssm_pojo)。
(4)修改service模块spring核心配置文件名,添加模块名称,格式:applicationContext-service.xml。
(5)修改dao模块spring核心配置文件名,添加模块名称,格式为:applicationContext-dao.xml。
(6)修改单元测试引入配置文件名称,由单个文件改为多个文件,以数组的形式。
1)新建模块(使用webapp模板)。
2)拷贝原始项目中对应的相关内容到ssm_controller模块中。
(1)表现层控制器类与相关设置器(Controller、异常相关)。
(2)配置文件:保留与表现层相关配置文件、服务器相关配置文件。
(3)pom.xml:引入数据层相关坐标即可,删除springmvc相关坐标(spring、springmvc、jackson、servlet、tomact服务器插件、直接依赖ssm_service、间接依赖ssm_dao、ssm_pojo)。
(4)修改web.xml配置文件中加载spring环境的配置文件名称,使用*通配,加载所有applicationContext-开始的配置文件。
多模块构建维护
作用:聚合用于快速构建maven工程,一次性构建多个项目/模块。
制作方式
1)创建一个控模块,打包类型定义为pom
<packaging>pompackaging>
2)定义当前模块进行构建操作时关联的其他模块名称
<modules>
<module>../模块名称module>
<module>../模块名称module>
modules>
模块依赖关系维护
作用:通过继承可以实现在子工程中沿用父工程中的配置。
制作方式:
1)在子工程中声明父工程坐标与对应的位置。
<parent>
<groupId>groupId>
<artifactId>artifactId>
<version>version>
<relativePath>../父工程名称/pom.xmlrelativePath>
parent>
2)在父工程中定义依赖管理
<dependencyManagement>
<dependencies>
<dependency>dependency>
dependencies>
dependencyManagement>
<bulid>
<pluginManagement>
<plugins>
<plugin>plugin>
plugins>
pluginManagement>
bulid>
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XH22My94-1657360702365)(C:\Users\Snower\AppData\Roaming\Typora\typora-user-images\image-20220708193449765.png)]
作用 |
---|
聚合用于快速构建项目;继承用于快速配置。 |
相同点 |
聚合与继承的pom.xml文件打包方式均为pom,可以将两种关系制作到同个pom文件中;聚合与继承均属于设计型模块,并无实际的模块内容。 |
不同点 |
聚合是在当前模块中配置关系,聚合可以感知到参与聚合的模块有哪些;继承是在子模块中配置关系,父模块无法感知哪些子模块继承了自己。 |
版本统一的重要性
作用:等同于定义变量,方便统一维护
定义格式:
<properties>
<jar名称.version>jar名称.version>
properties>
调用格式:
<dependency>
<groupId>groupId>
<artifactId>artifactId>
<version>${jar名称.version}version>
dependency>
工程版本:SNAPSHOT(快照版本)、RELEASE(发布版本)
工程版本号约定:约定规范
<主次本>.<次版本>.<增量版本>.<里程碑版本>
主版本:标识项目重大架构的变更。
次版本:表示有较大的功能增加和变化,或者全面系统地修复漏洞。
增量版本:表示有重大漏洞的修复。
里程碑版本:表明一个版本的里程碑。
配置文件引用pom属性
作用:在任意配置文件中加载pom文件中定义的属性。
调用格式
&{jdbc.url}
开启配置文件加载pom属性
<bulid>
<resources>
<resource>
<direstory>${project.basedir}/src/main/resourcesdirestory>
<filtering>truefiltering>
resource>
<testResource>
<direstory>${project.basedir}/src/test/resourcesdirestory>
<filtering>truefiltering>
testResource>
resources>
bulid>
<profiles>
<profile>
<id>pro_envid>
<properties>properties>
<activation>
<activeByDefault>trueactiveByDefault>
activation>
profile>
<profile>
<id>dev_envid>
……
profile>
profiles>
加载指定环境
mvn 指定 -P 环境定义id
1.使用命令跳过测试:mvn 指令 -D skipTests
2.使用配置跳过测试
Neuxs是Sonatype公司的一款maven私服产品。
下载地址:https://help.sonatype.com/repomanager3/download
启动服务器(命令行启动):nexus.exe /run /nexus
访问服务器(默认端口:8081)
修改基础配置信息:安装路径下etc目录中nexus-default.properties文件保存有nexus基础配置信息。例如默认访问接口。
修改服务器运行配置信息:安装路径下bin目录中nexus.vmoptions文件保存有nexus服务器启动对应的配置信息。例如默认占用内存。
宿主仓库hosted:保存无法从中央仓库获取的资源(自主研发、第三方非开源项目。)
代理仓库proxy:代理远程仓库,通过nexus访问其他公共仓库。
仓库组group:将若干个仓库组成一个群组,简化配置;仓库组并不能保存资源,属于设计型仓库。
访问私服配置(本地仓库访问私服)
配置本地仓库访问私服的权限(setting.xml)
<servers>
<server>
<id>id>
<username>username>
<password>password>
server>
servers>
配置本地仓库资源来源(setting.xml)
<mirrors>
<mirror>
<id>id>
<mirrorOf>*mirrorOf>
<url>url>
mirror>
mirrors>
访问私服配置(项目工程访问私服)
配置当前项目访问私服上传资源的保存位置(pom.xml)
<distributionManagement>
<repository>
<id>id>
<url>url>
repository>
<snapshotRepository>
<id>id>
<url>url>
snapshotRepository>
distributionManagement>
发布资源到私服命令
mvn deploy