第一天商城项目

复盘

1.maven高级部分聚合和继承

maven聚合工程(深度剖析)_一宿君的博客-CSDN博客

2.yml配置文件 mybatis

mybatis: mapper-locations: classpath:mappers/*mapper.xml

mapper-locations:这是一个子键,用于指定MyBatis映射文件(Mapper XML文件)的位置。在这里,classpath:mappers/*mapper.xml表示MyBatis应该在类路径下寻找所有以"mapper.xml"结尾的文件。这些XML文件通常包含SQL映射,定义了如何将Java对象映射到数据库表,以及SQL查询语句等。

type-aliases-package: com.hu.pojo

  1. 这是另一个子键,用于指定MyBatis的类型别名包(Type Aliases Package)。在这里,com.hu.pojo表示MyBatis将扫描这个包中的Java类,并将它们注册为MyBatis的类型别名。这样,你可以在映射文件中使用这些类型别名来引用Java类,而无需使用完全限定的类名。

例如,如果在com.hu.pojo包中有一个名为User的Java类,你可以在映射文件中使用User作为别名,而不必写完整的类路径,如com.hu.pojo.User

3.@MapperScan

@MapperScan 是 MyBatis Spring Boot 的注解,它用于指定 MyBatis 映射接口的扫描路径,以便 Spring Boot 能够自动创建这些接口的实

也可以在mapp层加个@mapper

4.spring-boot-starter-parent

这是一个 Maven 项目的父项目(Parent POM)配置,它定义了当前项目所继承的父项目,通常用于继承一些共享的配置和依赖。在这个例子中,父项目指定的是Spring Boot Starter Paren

解释这个配置的各部分:

  1. <parent> 元素:这是用于定义父项目的 XML 元素,它包含了子项目(当前项目)应该继承的父项目信息。

  2. <groupId>:指定了父项目的 Maven Group ID,即org.springframework.boot。这表示父项目属于 Spring Boot 组织。

  3. <artifactId>:指定了父项目的 Maven Artifact ID,即 spring-boot-starter-parent。这表示父项目的标识。

  4. <version>:指定了父项目的版本,即 2.7.15。这表示当前项目将继承 Spring Boot Starter Parent 版本2.7.15的配置和依赖。

通过继承 Spring Boot Starter Parent,你的项目可以受益于 Spring Boot 团队提供的一些共享

spring-boot-starter-parent 是 Spring Boot 提供的一个 Maven 父项目,它提供了一些默认的配置和依赖管理,可以让我们更方便地进行 Spring Boot 项目的开发。

1.聚合

聚合:聚合用于快速构建maven工程,一次性构建多个项目/模块。

创建一个空模块,pom.xml文件里添加打包类型为pom

java 复制代码
<!--定义该工程用于管理构建-->
<packaging>pom</packaging>

用 modules 标签来定义当前模块进行构建操作时关联的其他模块名称

java 复制代码
modules>
        <module>API</module>
        <module>beans</module>
        <module>mappers</module>
        <module>service</module>
        <module>API</module>
        <module>common</module>
    </modules>

创建聚合工程的要点

1.该聚合项目(父级项目、顶级项目)本身也是一个maven项目,它必须有自己的pom

2.它的打包方式必须是:pom

3.引入新的元素:modules---module(模块:每个模块其实也是一个项目)

4.版本:聚合模块的版本要和被聚合模块的版本一致

5.relative path:每个module名称都是一个当前pom的相对目录

6.目录名称:为了方便快速定位,模块所处的目录应当与其artifactId一致(maven约定而不是硬性要求),总之,模块所处的目录必须要和聚合模块中的模块目录保持一致。

7.聚合模块减少的内容:聚合模块的内容仅仅是一个pom.xml文件,它不包含src/main/java和src/test/java等目录,因为他只是用来将其他模块整合构建成一个整体的工具,本身并没有实质的内容。

8.聚合模块和子模块的目录:它们可以是父子级,也可以是平行结构(推荐)。默认是父子级结构,但是不建议使用,因为父子级是一种嵌套关系,子模块要建在父模块里面,维护起来很容易紊乱;推荐使用平行结构,是因为维护起来一目了然,条理比较清晰,当然同时要在pom文件的中修改相应的目录路径配置。

9.如果聚合模块对某一个子模块进行了删除操作,那么一定要在聚合模块的pom.xml文件中的modules选项中将对应的子模块删除掉。

2.继承

不同的模块不同人开发的时候,可能使用的资源版本不同,当整合到一起的时候可能会出现兼容上的问题。所以需要有个总的管理模块,在总的模块中去规定使用资源的版本

需要注意的是,添加依赖的时候 ,需要在声明依赖管理,声明的方法是需要在dependencies 标签外添加 dependencyManagement 标签。

相关推荐
2401_857439693 分钟前
SpringBoot框架在资产管理中的应用
java·spring boot·后端
怀旧6664 分钟前
spring boot 项目配置https服务
java·spring boot·后端·学习·个人开发·1024程序员节
测试界的酸菜鱼5 分钟前
C# NUnit 框架:高效使用指南
开发语言·c#·log4j
GDAL5 分钟前
lua入门教程 :模块和包
开发语言·junit·lua
李老头探索6 分钟前
Java面试之Java中实现多线程有几种方法
java·开发语言·面试
CSXB998 分钟前
三十四、Python基础语法(文件操作-上)
开发语言·python·功能测试·测试工具
芒果披萨12 分钟前
Filter和Listener
java·filter
qq_49244844616 分钟前
Java实现App自动化(Appium Demo)
java
阿华的代码王国25 分钟前
【SpringMVC】——Cookie和Session机制
java·后端·spring·cookie·session·会话
web Rookie28 分钟前
JS类型检测大全:从零基础到高级应用
开发语言·前端·javascript