(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版本

//上传到私服

相关推荐
科技块儿23 分钟前
多语言技术栈如何共用IP离线库?Java、Python、Go 的加载实践
java·python·tcp/ip
chools37 分钟前
一篇文章带你搞懂Java“设计模式”! - - 超长文(涵盖23种)万字总结!【汇总篇】
java·开发语言·设计模式
良逍Ai出海38 分钟前
OpenClaw 新手最该先搞懂的 2 套命令
android·java·数据库
6+h1 小时前
【Spring】深度剖析IoC
java·后端·spring
程序员JerrySUN1 小时前
别再把 HTTPS 和 OTA 看成两回事:一篇讲透 HTTPS 协议、安全通信机制与 Mender 升级加密链路的完整文章
android·java·开发语言·深度学习·流程图
郝学胜-神的一滴1 小时前
系统设计与面向对象设计:两大设计思想的深度剖析
java·前端·c++·ue5·软件工程
myloveasuka1 小时前
[Java]子类到底能继承父类中的哪些东西?继承中成员变量/方法访问特点---就近原则
java·开发语言
umeelove351 小时前
vscode配置django环境并创建django项目(全图文操作)
java
x-cmd1 小时前
[260307] x-cmd v0.8.6:新增 gpt-5.4 模型支持,sudo/os/hostname/cpu 等模块文档更新
java·数据库·gpt·sudo·x-cmd·googel
PPPPickup1 小时前
深信服公司---java实习生后端一二面询问
java·后端·ai