JavaWeb企业级开发---Maven高级

记录在听黑马课的时候的笔记以及课堂上练习的代码,文章图源于我在听课的时候所截的屏,所以有些不清晰,请见谅。下面是课程链接 ,可点击自行跳转。

【黑马程序员JavaWeb开发教程,实现javaweb企业开发全流程(涵盖Spring+MyBatis+SpringMVC+SpringBoot等)】 https://www.bilibili.com/video/BV1m84y1w7Tb/?share_source=copy_web&vd_source=d521b664e1113402904fa9336bd1d0ac


目录

分模块设计与开发

继承与聚合

继承

继承关系

版本锁定

聚合实现

私服

介绍

资源上传与共享

私服配置说明

Web开发总结


分模块设计与开发

创建项目时,选择maven即可,之后可导入所需要的依赖。

当我们想用模块代码功能时,只需要将该模块进行依赖导入即可。

复制代码
<!--        引入自己创建的实体类依赖-->
        <dependency>
            <groupId>com.jianglin</groupId>
            <artifactId>tails-pojo</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>
<!--        引入自己创建的utils工具类-->
        <dependency>
            <groupId>com.jianglin</groupId>
            <artifactId>tails-utils</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

整个框架代码是这样划分的。

继承与聚合

继承

继承关系

jar:普通模块打包,springboot项目基本都是jar包(内嵌tomcat运行)

war: 普通web程序打包,需要部薯在外部的tomcat服务器中运行

pom: 工程或聚合工程,该模块不写代码,仅进行依赖管理

版本锁定

对于springboot我们不会对其进行同一版本管理,因为spring boot已经自动设置了版本管理了。

聚合实现

继承与聚合
作用

聚合用于快速构建项目

继承用于简化依赖配置,统一管理依赖
相同点:

聚合与继承的pom,xml文件打包方式均为pom,可以将两种关系制作到同一个pom文件中

聚合与继承均属于设计型模块,并无实际的模块内容
不同点:

聚合是在聚合工程中配置关系,聚合可以感知到参与聚合的模块有哪些

继承是在子模块中配置关系,父模块无法感知哪些子模块继承了自己

私服

介绍

资源上传与共享

私服配置说明

访问私服:http://192.168.150.101:8081

访问密码:admin/admin

使用私服,需要在maven的settings.xml配置文件中,做如下配置:

1.需要在 servers 标签中,配置访问私服的个人凭证(访问的用户名和密码)

复制代码
<server>
    <id>maven-releases</id>
    <username>admin</username>
    <password>admin</password>
</server>
    
<server>
    <id>maven-snapshots</id>
    <username>admin</username>
    <password>admin</password>
</server>

2.在 mirrors 中只配置我们自己私服的连接地址(如果之前配置过阿里云,需要直接替换掉)

复制代码
<mirror>
    <id>maven-public</id>
    <mirrorOf>*</mirrorOf>
    <url>http://192.168.150.101:8081/repository/maven-public/</url>
</mirror>

3.需要在 profiles 中,增加如下配置,来指定snapshot快照版本的依赖,依然允许使用

复制代码
<profile>
    <id>allow-snapshots</id>
        <activation>
        	<activeByDefault>true</activeByDefault>
        </activation>
    <repositories>
        <repository>
            <id>maven-public</id>
            <url>http://192.168.150.101:8081/repository/maven-public/</url>
            <releases>
            	<enabled>true</enabled>
            </releases>
            <snapshots>
            	<enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</profile>

4.如果需要上传自己的项目到私服上,需要在项目的pom.xml文件中,增加如下配置,来配置项目发布的地址(也就是私服的地址)

复制代码
<distributionManagement>
    <!-- release版本的发布地址 -->
    <repository>
        <id>maven-releases</id>
        <url>http://192.168.150.101:8081/repository/maven-releases/</url>
    </repository>
    
    <!-- snapshot版本的发布地址 -->
    <snapshotRepository>
        <id>maven-snapshots</id>
        <url>http://192.168.150.101:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

发布项目,直接运行 deploy 生命周期即可 (发布时,建议跳过单元测试)

启动本地私服

解压: apache-maven-nexus.zip

进入目录: apache-maven-nexus\nexus-3.39.0-01\bin

启动服务:双击 start.bat

访问服务:localhost:8081

私服配置说明:将上述配置私服信息的 192.168.150.101 改为 localhost

Web开发总结


本次JavaWeb企业级开发课程成功完结,感谢大家观看,希望对大家有帮助。

相关推荐
卓怡学长几秒前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea
换个昵称24 分钟前
大模型学习8下-高性能推理引擎vLLM学习笔记
笔记·学习·vllm
C++、Java和Python的菜鸟25 分钟前
第7章 Java高级技术
java·开发语言
LONGZHIQIN28 分钟前
C#基础复习笔记
开发语言·笔记·c#
程序员佳佳35 分钟前
模型网关灰度不是调百分比:把放量、观测和回滚做成账本
java·数据库·人工智能·redis·gpt·aigc·embedding
得闲喝茶43 分钟前
跨表数据匹配——VLOOKUP、XLOOKUP
大数据·数据库·笔记·信息可视化·数据分析·excel
报错小能手1 小时前
OpenTenBase学习——集群编译&部署
学习
渣渣灰飞1 小时前
MySQL 系统学习 第二阶段 第四章:DCL(Data Control Language)第二节:权限管理与角色(Role)
数据库·学习·mysql
Listen·Rain2 小时前
Springboot整合Ollama实现调用本地多模型
java·spring boot·后端
霸道流氓气质2 小时前
Java 工程师 AI 智能体(Agent)完整学习路线
java·人工智能·学习