IDEA版SSM入门到实战(Maven+MyBatis+Spring+SpringMVC) -Maven核心概念

一.Maven的POM

  • POM全称:Project Object Model【项目对象模型】,将项目封装为对象模型,便于使用Maven管理【构建】项目

  • pom.xml常用标签

    xml 复制代码
    <?xml version="1.0" encoding="UTF-8"?>
    <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">
        <!--    设置父工程坐标-->
        <parent>
            <artifactId>maven_demo</artifactId>
            <groupId>com.atguigu</groupId>
            <version>1.0-SNAPSHOT</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
    
        <artifactId>maven_helloworld</artifactId>
    
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </project>

二. Maven约定的目录结构

  • 项目名
    • src【书写java源代码】
      • main【书写java主程序代码】
        • java【书写java代码】
        • resources【书写配置文件代码】
      • test【书写测试代码】
        • java【书写测试java代码】
    • pom.xml【书写配置文件代码】
    • target【编译后目录结构】

三. Maven生命周期

  • Maven生命周期:按照顺序执行各个命令,Maven生命周期包含以下三个部分组成
    • Clean LifeCycle:在进行真正的构建之前进行一些清理工作。
    • Default LifeCycle:构建的核心部分,编译,测试,打包,安装,部署等等。
    • Site LifeCycle:生成项目报告,站点,发布站点。

四. Maven插件和目标

  • 插件:插件本质是由jar包和配置文件组成
  • 目标:每个插件都能实现多个功能,每个功能就是一个插件目标。

五. Maven的仓库【重要】

  • 仓库分类
    • 本地仓库:为当前计算机提供maven服务
    • 远程仓库:为其他计算机也可以提供maven服务
      • 私服:架设在当前局域网环境下,为当前局域网范围内的所有Maven工程服务。
      • 中央仓库:架设在Internet上,为全世界所有Maven工程服务。
      • 中央仓库的镜像:架设在各个大洲,为中央仓库分担流量。减轻中央仓库的压力,同时更快的响应用户请求。
  • 仓库中的文件类型【jar包】
    • Maven的插件
    • 第三方框架或工具的jar包
    • 自己研发的项目或模块

六. Maven的坐标【重要】

  • 作用:使用坐标引入jar包

  • 坐标由g-a-v组成

    1groupId:公司或组织的域名倒序+当前项目名称

    2artifactId:当前项目的模块名称

    3version:当前模块的版本

  • 注意

    • g-a-v:本地仓库jar包位置
    • a-v:jar包全名
  • 坐标应用

    • 坐标参考网址:http://mvnrepository.com

    • 语法,示例

      xml 复制代码
      <dependencies>
          <dependency>
              <groupId>junit</groupId>
              <artifactId>junit</artifactId>
              <version>4.12</version>
              <scope>test</scope>
          </dependency>
      
          <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
          <dependency>
              <groupId>javax.servlet</groupId>
              <artifactId>javax.servlet-api</artifactId>
              <version>4.0.1</version>
              <scope>provided</scope>
          </dependency>
      
          <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
          <dependency>
              <groupId>org.springframework</groupId>
              <artifactId>spring-context</artifactId>
              <version>5.3.17</version>
          </dependency>
      </dependencies>
相关推荐
卓怡学长18 分钟前
w181springboot机场乘客服务系统
java·数据库·spring boot·spring·intellij-idea
卓怡学长5 小时前
w192基于springboot教务管理系统
java·数据库·spring boot·spring·maven·intellij-idea
栀栀栀栀栀栀5 小时前
2026/8/23 maven springboot
java·spring boot·maven
山甫aa19 小时前
Javaweb---MyBatis增删改查
java·数据库·后端·mybatis·springboot
EXI-小洲21 小时前
MacOS 环境下 IntelliJ IDEA 的 Maven 配置指南
macos·maven·intellij-idea
choumou_M1 天前
SpringBoot_2:MyBatis-Generator插件使用教程
spring boot·tomcat·mybatis
SQL-First布道者1 天前
全面解构传统持久层框架,拥抱真正的 SQL-First
java·数据库·spring boot·sql·spring·mybatis·spring jdbc
小小安于乱2 天前
解决IDEA的git插件pull代码冲突但右下角不提示消息问题
java·git·intellij-idea
EXI-小洲2 天前
MacOS IDEA将本地项目代码上传至SVN空仓库
macos·svn·intellij-idea
gugucoding3 天前
55. 【Java】Maven:项目构建的“管家”
java·maven