第十二次课后作业--servlet技术和maven高级功能

一、Servlet

Servlet需要在web应用中运行,本身不能独立运行,web应用通常是部署在tomcat中,开发Servlet的步骤:创建web应用项目-->编写servlet代码-->部署到tomcat当中。

二、maven高级功能

1、分模块设计与开发

设计java项目时,将java项目分为多个模块进行开发,便于项目的管理和后期维护,也方便模块间的相互调用、资源共享。被拆分的模块需要使用时只需引入相应的依赖即可。(实体类中只用到了lomboka依赖)

分模块开发需要先针对模块进行设计,再进行编码,不会先将工程开发完毕在进行拆分。

2、继承与聚合

继承--简化依赖配置,统一管理依赖

描述的是两个工程间的关系,与Java中的继承相似,子工程可以继承父工程中的配置信息,常指的是依赖关系的继承。

maven的父工程其打包方式pom(默认是jar),使用<packaging>pom</package>标签指定打包方式,同时自己创建的父工程需要继承spring boot项目的父工程spring-boot-starter-parent,然后让各个分离的子工程继承自己创建的父工程,在子工程中通过<parent>...</parent>表明父工程的坐标,标签中使用<relativePath>...</relativePath>说明父工程pom文件的相对位置(不指定的话就会从本地仓库/远程仓库查找该工程)。

在子工程中,配置了继承关系后,表中的groupID可以省略掉

maven中常见的打包方式:

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

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

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

版本锁定:

在父工程的pom文件中通过<dependencyManagement>统一管理依赖版本。子工程引入依赖时,无需指定<version>版本号,父工程统一管理。变更依赖版本,只需要在父工程中统一管理。

<dependencyManagement>与<dependencies>区别:

<dependencies>时直接依赖,在父工程配置了依赖,子工程会直接继承下来

<dependencyManagement>是统一管理版本依赖,不会直接依赖,还需要再子工程中引入所需依赖(但无需指定版本)

自定义属性/引用属性,集中维护项目所依赖的资源的版本

聚合--用于快速构建项目

  • 将多个模块组成一个整体,同时进行项目的构建,无需根据依赖关系手动构建,直接在聚合工程上构建,实现项目的方便打包、编译、安装等,实现聚合功能需要一个不具有任何业务功能的空工程,有且仅有一个pom文件的聚合工程。

实现:聚合工程通常也是继承当中的父工程,通过<modules>标签设置当前聚合工程所包含的子模块名称,其中模块的书写顺序不影响项目构建,在构建时,会自动根据模块间的依赖关系设置构建顺序。

总结--继承与聚合异同点:

相同点:

  • 聚合与继承的pom.xml文件打包方式均为pom,可以将两种关系制作到同一个pom文件中;
  • 继承与聚合均属于设计型模块,并无实际的模块内容

不同点:

  • 聚合是在聚合工程中配置关系,聚合可以感知到参与到聚合的模块有哪些
  • 继承是在子模块中配置关系,父模块无法感知哪些子模块继承了自己
3、私服

私服是一种特殊的远程仓库,是架设在局域网内的仓库服务,用来代理位于外部的中央仓库,用于解决团队内部的资源共享与资源同步问题。

依赖的查找顺序:本地仓库-->私服-->中央仓库

私服的上传与下载:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值