log4j
log4j
${log4j.version}
junit
junit
${junit.version}
test
org.springframework
spring-core
${spring.version}
聚合:<modules></modules>
从字面意思来说,module就是模块,而pom.xml中的modules也正是这个意思,用来管理同个项目中的各个模块;如果maven用的比较简单,或者说项目的模块在pom.xml没进行划分,那么此元素是用不到的;不过一般大一点的项目是要用到的。
使用场景:
如果我们的项目分成了好几个模块,那么我们构建的时候是不是有几个模块就需要构建几次了(到每个模块的目录下执行mvn命令)?当然,你逐个构建没问题,但是非要这么麻烦的一个一个的构建吗,那么简单的做法就是使用聚合,一次构建全部模块。
版本号统一管理:
在spring的依赖中,我们需要引用一系列版本的spring,如版本1.2.6。每次都写不利于维护。所以加入标签properties,动态注入版本号。
<spring.version>4.1.7.RELEASE</spring.version>
继承当然要有父和子,举例:
user_dao项目的pom.xml
<project xmlns=“http://maven.apache.org/POM/4.0.0” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
user_parent
parent
0.0.1-SNAPSHOT
…/parent/pom.xml
com.user.login
user_dao
jar
user_dao
http://maven.apache.org
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
org.mybatis
mybatis
mysql
mysql-connector-java
log4j
log4j
junit
junit
test
明显的看见有<parent>
标签
user_parent
parent
0.0.1-SNAPSHOT
…/parent/pom.xml
groupId、artifactId、version对应的是父pom.xml的信息,relativePath这个标注父pom.xml在哪里。
你仔细看,依赖包的的版本号都没了,这是因为在父pom.xml里统一管理了。
maven的聚合和继承如果是自己的小项目没必要用,但是公司里的项目多了,大项目下还有子项目就需要统一管理。
学习maven的一些小知识:
在添加依赖时下载很慢,原因是maven的远程仓库在国外,要想下载快,用阿里云仓库。
在maven的安装包下(我的D:\maven\apache-maven-3.5.2\conf)找到settings.xml打开找到标签mirrors
复制替换下面的阿里仓库配置即可
alimaven
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public/
central
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
总结
我个人认为,如果你想靠着背面试题来获得心仪的offer,用癞蛤蟆想吃天鹅肉形容完全不过分。想必大家能感受到面试越来越难,想找到心仪的工作也是越来越难,高薪工作羡慕不来,却又对自己目前的薪资不太满意,工作几年甚至连一个应届生的薪资都比不上,终究是错付了,错付了自己没有去提升技术。
这些面试题分享给大家的目的,其实是希望大家通过大厂面试题分析自己的技术栈,给自己梳理一个更加明确的学习方向,当你准备好去面试大厂,你心里有底,大概知道面试官会问多广,多深,避免面试的时候一问三不知。
大家可以把Java基础,JVM,并发编程,MySQL,Redis,Spring,Spring cloud等等做一个知识总结以及延伸,再去进行操作,不然光记是学不会的,这里我也提供一些脑图分享给大家:
希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
片转存中…(img-m0N31L4o-1712655977775)]
[外链图片转存中…(img-ZWiLFTgQ-1712655977775)]
希望你看完这篇文章后,不要犹豫,抓紧学习,复习知识,准备在明年的金三银四拿到心仪的offer,加油,打工人!
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-ARB4E9rU-1712655977775)]