【Maven】—— SSM分模块开发

news2024/11/18 13:46:15

目录

一、分模块开发意义

二、示例

1、新建模块

2、书写模块代码

3、通过maven指令安装模块到本地仓库

三、可选依赖

四、排除依赖

五、聚合

使用

1、新建一个新的模块

2、设置打包类型为pom

3、设置所包含的子模块名称

六、继承

1、新建模块,设置打包类型为pom

2、在父工程中配置子工程要用到的依赖

3、配置子工程可选择的依赖

4、在子工程中配置当前工程所继承的父工程

5、在子工程配置使用父工程可选依赖的坐标


一、分模块开发意义

将原始模块按照功能拆分成若干子模块,方便模块间的相互调用。

二、示例

将以下domain部分分离到一个新模块中。

1、新建模块

2、书写模块代码

        将需要依赖的模块添加到pom.xml文件中,这里只是定义了新模块,idea不会报错,但是并不能正常运行,因为本地仓库还没有下载新模块依赖。

3、通过maven指令安装模块到本地仓库

        将新模块安装到本地仓库。

三、可选依赖

依赖中加入<optional>标签,隐藏当前工程所依赖的资源,隐藏后对应资源将不具有依赖性。

可选依赖用于以下情况:目前所用的依赖不想让别人看到,隐藏自己所用的依赖,别人不知道是否用到。

<!--    依赖domain-->
    <dependency>
      <groupId>org.spring</groupId>
      <artifactId>SSM_02</artifactId>
      <version>1.0-SNAPSHOT</version>
<!--        可选依赖,隐藏依赖-->
        <optional>false</optional>
    </dependency>

四、排除依赖

引用别人的模块依赖时,将他的某些依赖去除。

例如:SSM_02模块有log4j依赖,引用SSM_02模块但是不想使用log4j依赖时,可使用排除依赖。

<!--    依赖domain-->
    <dependency>
      <groupId>org.spring</groupId>
      <artifactId>SSM_02</artifactId>
      <version>1.0-SNAPSHOT</version>

<!--        排除依赖-->
        <exclusions>
            <exclusion>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

五、聚合

将多个模块组织成一个整体,同时进行项目构建。

当工程某个模块发生更新,保障工程中与已更新模块关联的模块同步更新。

使用

1、新建一个新的模块

2、设置打包类型为pom

3、设置所包含的子模块名称

<!--    设置管理的模块名称-->
    <modules>
        <module>../SSM</module>
        <module>../SSM_02</module>
    </modules>

六、继承

继承描述的是两个工程间的关系,子工程可继承父工程中的配置信息,常见于依赖关系的继承。

作用:简化配置,减少版本冲突。

1、新建模块,设置打包类型为pom

2、在父工程中配置子工程要用到的依赖

3、配置子工程可选择的依赖

与上一步骤不同的是子工程可选择用或不用此依赖

4、在子工程中配置当前工程所继承的父工程

<!--    配置当前工程继承自parent工程-->
    <parent>
        <groupId>com.spring</groupId>
        <artifactId>SSM_parent</artifactId>
        <version>1.0-SNAPSHOT</version>
        <relativePath>../SSM_parent/pom.xml</relativePath>
    </parent>

5、在子工程配置使用父工程可选依赖的坐标

使用第三步的依赖坐标

 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1396399.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

dp专题15 零钱兑换

本题链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 题目&#xff1a; 思路&#xff1a; 这道题&#xff0c;是个比较模板的完全背包问题&#xff0c;这里要求的是问凑成总金额所需的最少的硬币的个数。 我们明确一下 dp[ …

红队打靶练习:BOB: 1.0.1

目录 信息收集 1、netdiscover 2、nmap 3、nikto 4、whatweb 目录探测 1、dirb 2、gobuster 3、dirsearch WEB 主页&#xff1a; robots.txt 其他页面 反弹shell 提权 系统信息收集 jc账户 本地提权 信息收集 1、netdiscover ┌──(root㉿ru)-[~/kali] └…

「JavaSE」类和对象3

&#x1f387;个人主页&#xff1a;Ice_Sugar_7 &#x1f387;所属专栏&#xff1a;快来卷Java啦 &#x1f387;欢迎点赞收藏加关注哦&#xff01; 类和对象3 &#x1f349;多态&#x1f34c;重写&#x1f34c;向上转型&向下转型&#x1f34c;静态绑定&动态绑定&#x…

Docker 安装 CentOS

Docker 安装 CentOS CentOS&#xff08;Community Enterprise Operating System&#xff09;是 Linux 发行版之一&#xff0c;它是来自于 Red Hat Enterprise Linux(RHEL) 依照开放源代码规定发布的源代码所编译而成。由于出自同样的源代码&#xff0c;因此有些要求高度稳定性…

【Docker】在centos中安装nginx

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是平顶山大师&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《【Docker】安装nginx》。&#x1f3af;&#…

16.云原生之kubesphere组件安装卸载

云原生专栏大纲 文章目录 KubeSphere组件介绍KubeSphere组件安装卸载配置内容参考安装组件步骤卸载组件步骤 KubeSphere组件介绍 KubeSphere 的全部可插拔组件如下&#xff1a; 配置项功能组件描述alertingKubeSphere 告警系统可以为工作负载和节点自定义告警策略。告警策略…

WordPress后台底部版权信息“感谢使用 WordPress 进行创作”和版本号怎么修改或删除?

不知道各位WordPress站长在后台操作时&#xff0c;是否有注意到每一个页面底部左侧都有一个“感谢使用 WordPress 进行创作。”&#xff0c;其中WordPress还是带有nofollow标签的链接&#xff1b;而页面底部右侧都有一个WordPress版本号&#xff0c;如下图中的“6.4.2 版本”。…

海盗王NPC出售物品解析器

在编辑或者查看NPC出售物品的时候&#xff0c;需要了解它到底出售了那些物品。 当物品很多的时候&#xff0c;就很难一个一个地去查了。 想到之前有做过一个物品编辑器&#xff0c;于是就想在那个基础上再增加一个NPC物品分析器功能。 实现如下&#xff1a; 将NPC的出售列表直接…

【算法Hot100系列】跳跃游戏

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

三层架构——工业控制领域简单理解

前言闲话 工业领域对好滴软件架构的需求不高&#xff0c;但不意味着可以用纯面向过程式编程解决问题&#xff0c;这样后期维护必将大乱。 曾经和一位从业30年的老电气工程师交流工业控制编程&#xff1a; 我问&#xff1a;为啥富士康这些大厂以前的机器都不联网&#xff1f;&…

Gin 框架之Cookie与Session

文章目录 一、Cookie和Session的由来二、Cookie简介1. 什么是Cookie2. Cookie规范3. 安全性4. Cookie 关键配置 三、Session简介1. 什么是Session2. Session 安全性3. 如何让客户端携带 sess_id 四、使用 Gin 的 Session 插件4.1 介绍4.2 基本使用 五、 session与store5.1 会话…

第六回 花和尚倒拔垂杨柳 豹子头误入白虎堂-安装服务器管理面板AMH和cyberpanel

且说鲁智深踏入菜园之时&#xff0c;二三十个泼皮无赖正聚集于此&#xff0c;他们手持果盒酒礼&#xff0c;脸上嬉皮笑脸&#xff0c;口称前来庆贺。然而&#xff0c;当这群人走到粪窖边缘&#xff0c;打头阵的张三和李四竟妄想搬动鲁智深&#xff0c;结果却被他轻描淡写地一脚…

Microsoft365管理员创建共享邮箱

​​​​​​ 创建共享邮箱 项目2023/08/2110 个参与者 反馈 本文内容 创建共享邮箱并添加成员您应使用哪些权限&#xff1f;阻止登录共享邮箱帐户向 Outlook 添加共享邮箱 显示另外 3 个 备注 如果你的组织使用的是混合 Exchange 环境&#xff0c;则你应使用本地 Excha…

新能源汽车智慧充电桩方案:智能高效的充电桩管理模式及应用场景

一、行业背景 随着全球对环境保护的日益重视&#xff0c;新能源汽车成为了未来的发展趋势。而充电桩作为新能源汽车的核心基础设施&#xff0c;其智慧化的解决方案对于推动新能源汽车的普及和发展至关重要。通过智能化、高效化的充电服务&#xff0c;提高用户体验&#xff0c;…

智慧充电桩的市场前景未来

随着电动汽车的日益普及&#xff0c;充电问题成为广大车主的关注焦点。作为领先的科技企业&#xff0c;天津通捷创科为您带来了一站式解决方案——共享充电桩APP。 <h1>一、即刻定位&#xff0c;充电桩触手可及</h1> 在天津通捷创科的共享充电桩APP中&#xff0c…

洛谷P5731 【深基5.习6】蛇形方阵(C语言)

思路感觉还是比较好想的。 从 1 到 n 依次算。先往右&#xff0c;走到头往下&#xff0c;再走到头往左&#xff0c;以此类推。 #include<stdio.h>int main() {int n, i, j, k1,t0;scanf("%d", &n);int a[100][100];if (n % 2 0)t n / 2;elset n / 2 …

测温传感器表带式ATE200安装指导

ATE200 安装方法 ATE200 表带式无线测温传感器适用于断路器动触头、静触头、电缆接头、母排等处。 表带式无线温度传感器结构说明: ATE200 structure introduction: 1 —— 无线温度传感器主体&#xff0c;测温探头在背面 The core of wireless temperature sensor ATE200,…

2023总结,瞳孔滤镜

2022总结&#xff0c;强风吹拂 2021总结&#xff0c;欲望反光 2020总结&#xff0c;我与思阳 2019总结&#xff0c;乘风破浪 2018总结&#xff0c;蜗行牛步 2017总结&#xff0c;勿忘初心 得益于疫情的结束&#xff0c;出行自由&#xff0c;2023年09月24日下午 &#xf…

Qt/C++自定义界面大全/20套精美皮肤/26套精美UI界面/一键换肤/自定义颜色/各种导航界面

一、前言 这个系列对应自定义控件大全&#xff0c;一个专注于控件的编写&#xff0c;一个专注于UI界面的编写&#xff0c;程序员有两大软肋&#xff0c;一个是忌讳别人说自己的程序很烂很多bug&#xff0c;一个就是不擅长UI&#xff0c;基本上配色就直接rgb&#xff0c;对于第…

精品基于Uniapp+springboot校园学校趣事管理系统app

《[含文档PPT源码等]精品基于Uniappspringboot趣事管理系统app》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程、包运行成功&#xff01; 软件开发环境及开发工具&#xff1a; 开发语言&#xff1a;Java 后台框架&#xff1a;springboot、ssm 安卓…