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>
相关推荐
我命由我123452 小时前
Spring Boot 项目集成 Redis 问题:RedisTemplate 多余空格问题
java·开发语言·spring boot·redis·后端·java-ee·intellij-idea
李少兄3 小时前
解决MyBatis参数绑定中参数名不一致导致的错误问题
mybatis
楚歌again6 小时前
【如何在IntelliJ IDEA中新建Spring Boot项目(基于JDK 21 + Maven)】
java·spring boot·intellij-idea
酷爱码6 小时前
IDEA 中 Maven Dependencies 出现红色波浪线的原因及解决方法
java·maven·intellij-idea
异常君8 小时前
MyBatis 中 SqlSessionFactory 和 SqlSession 的线程安全性深度分析
java·面试·mybatis
李少兄9 小时前
解决 idea提示`SQL dialect is not configured` 问题
java·sql·intellij-idea
BreezeDove9 小时前
IDEA安装&迁移IDEA配置数据位置
java·ide·intellij-idea
bing_15821 小时前
跨多个微服务使用 Redis 共享数据时,如何管理数据一致性?
redis·微服务·mybatis
云之兕1 天前
MyBatis 的动态 SQL
数据库·sql·mybatis
杰哥技术分享1 天前
IDEA 打开文件乱码
java·ide·intellij-idea