IDEA版SSM入门到实战(Maven+MyBatis+Spring+SpringMVC) -Maven依赖管理,版本号管理,继承和聚合

第一章 Maven的依赖管理

1.1 依赖范围
  • 依赖语法:<scope>
    • compile【默认值】:在main、test、Tomcat【服务器】下均有效。
    • test:只能在test目录下有效
      • junit
    • provided:在main、test下均有效,Tomcat【服务器】无效。
      • servlet-api
1.2 依赖传递性
  • 路径最短者有先【就近原则】

  • 先声明者优先

  • 注意:Maven可以自动解决jar包之间的依赖问题

第二章 Maven中统一管理版本号

  • 语法

    xml 复制代码
    <properties>
        <spring-version>5.3.17</spring-version>
    </properties>
    <dependencies>
        <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-beans</artifactId>
                <version>${spring-version}</version>
        </dependency>
    </dependencies>

第三章 Maven的继承

3.1 为什么需要继承
  • 如子工程大部分都共同使用jar包,可以提取父工程中,使用【继承原理】在子工程中使用
  • 父工程打包方式,必须是pom方式
3.2 Maven继承方式一
  • 在父工程中的pom.xml中导入jar包,在子工程中统一使用。【所有子工程强制引入父工程jar包】

  • 示例代码

    xml 复制代码
    <packaging>pom</packaging>
    <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
3.3 Maven继承方式二
  • 在父工程中导入jar包【pom.xml】

    xml 复制代码
    <packaging>pom</packaging>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
  • 在子工程引入父工程的相关jar包

    xml 复制代码
    <parent>
        <artifactId>maven_demo</artifactId>
        <groupId>com.atguigu</groupId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../pom.xml</relativePath>
    </parent>
     <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
            </dependency>
    </dependencies>
  • 注意:在子工程中,不能指定版本号

第四章 Maven的聚合

  • 为什么使用Maven的聚合

    • 优势:只要将子工程聚合到父工程中,就可以实现效果:安装或清除父工程时,子工程会进行同步操作。
    • 注意:Maven会按照依赖顺序自动安装子工程
  • 语法

    xml 复制代码
    <modules>
        <module>maven_helloworld</module>
        <module>HelloFriend</module>
        <module>MakeFriend</module>
    </modules>
相关推荐
未若君雅裁3 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
Simon523147 小时前
MyBatis三大核心文件:Entity、DAO、Mapper
mybatis
MandalaO_O10 小时前
MyBatis:核心概念 + 环境搭建 + CRUD
java·tomcat·mybatis
XS03010612 小时前
MyBatis基础实战笔记一
笔记·mybatis
北风toto12 小时前
为什么 IntelliJ IDEA Community 无法开发 Vue?——附解决方案
java·vue.js·intellij-idea
噢,我明白了13 小时前
MyBatis-Plus的引入和配置
java·tomcat·mybatis
NiceCloud喜云15 小时前
Claude API 流式输出(SSE)实战:从打字机效果到工具调用全流程
java·前端·ide·人工智能·chrome·intellij-idea·状态模式
霸道流氓气质16 小时前
Spring Boot + MyBatis-Plus 实现异常隔离的 Upsert 数据落库(含远程调用数据补全)
spring boot·后端·mybatis
Devin~Y16 小时前
大厂Java面试实战:Spring Boot微服务、Redis缓存、Kafka消息队列与Spring AI RAG
java·spring boot·redis·kafka·mybatis·spring mvc·hikaricp
小江的记录本17 小时前
【Java基础】集合框架: ArrayList vs LinkedList 核心区别、扩容机制(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven