(javaweb)maven高级

目录

​编辑

1.分模块设计与开发

2.继承与聚合--继承关系实现

3.继承与聚合--版本锁定

4.继承与聚合--聚合版本

5.私服

资源的上传与下载


1.分模块设计与开发

分模块:拆分成多个模块进行开发

不分模块:业务代码堆积成一个 不利于项目管理和维护并且难以复用

解决:分模块设计 模块独立

各模块之间可以互相引用:引入他的坐标

pojo中:分页结果的封装类pagebean统一响应结果result 还有一些实体类

如果要复用当前项目的实体类 工具类---创建maven的模块 引入对应的依赖即可

2.继承与聚合--继承关系实现

在maven中,工程与工程之间也可以实现继承关系

解决这个问题:创建父工程:parent 模块继承该父工程 下面的工程为子工程

共有的写在父工程当中

只要子工程继承了父工程,依赖也会继承下来

若为父工程,其打包方式要设置为pom 模块默认打包方式为jar包

有三种打包方式

springboot项目运行在内部的Tomcat服务器当中

早期基于servlet开发的web程序以及基于原始的spring mvc所开的web应用程序---打包方式都是war包

打包成war包没法通过java指令运行 必须要部署在外部的Tomcat服务器中运行

pom的打包方式常见于继承关系中的父工程

所有的springboot项目都有一个统一的父工程

在maven中 一个子工程只能继承一个父工程(只能单继承)不能多继承 但可以多重继承

父工程中--不会写任何的java代码

父子工程都放在同一个目录下,属于是平级的关系 第二种工程结构更加清楚

3.继承与聚合--版本锁定

模块拆分的越多,依赖的版本号越不好管理-----maven中:版本锁定

dependencyManagement**--仅仅起到统一管理依赖版本的作用,并不会直接依赖 要想使用必须引入相应的依赖坐标,只不过不用再指定version了**

自定义属性集中维护版本

4.继承与聚合--聚合版本

parent既是一个父工程,又是一个聚合工程

5.私服

同一个公司两个项目组之间基于私服进行资源的共享 各自都有maven的本地仓库

中央仓库:全球只有一个 不能上传自己的jar 如何解决团队内部资源共享的问题????

私服!!!!(架设在公司局域网内部的一台服务器 是一种特殊的远程仓库) 各个团队可以连接私服

A连接到私服将jar包上传到私服 然后A与B连接同一台私服 然后B根据坐标找到私服中的jar包 下载到自己的本地仓库

此时 通过私服完成了团队内部资源的共享

若要使用mybatis最新的依赖 私服需要自动连接中央仓库,从中央仓库把需要的jar包下载下来 存放在私服的仓库当中

项目组先从本地仓库中找--若没有就去私服中去找--私服也没有就去中央仓库去找

资源的上传与下载

这里所说的资源就是依赖jar包

上传到私服--首先需要安装到本地仓库 再将本地仓库上传到私服当中(此时执行的maven指令叫deploy--发布 是maven的生命周期)

默认是release版本

//上传到私服

相关推荐
xlsw_1 小时前
java全栈day20--Web后端实战(Mybatis基础2)
java·开发语言·mybatis
神仙别闹2 小时前
基于java的改良版超级玛丽小游戏
java
黄油饼卷咖喱鸡就味增汤拌孜然羊肉炒饭2 小时前
SpringBoot如何实现缓存预热?
java·spring boot·spring·缓存·程序员
暮湫2 小时前
泛型(2)
java
超爱吃士力架2 小时前
邀请逻辑
java·linux·后端
南宫生3 小时前
力扣-图论-17【算法学习day.67】
java·学习·算法·leetcode·图论
转码的小石3 小时前
12/21java基础
java
李小白663 小时前
Spring MVC(上)
java·spring·mvc
GoodStudyAndDayDayUp3 小时前
IDEA能够从mapper跳转到xml的插件
xml·java·intellij-idea
装不满的克莱因瓶3 小时前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb