Maven+Spring

一、Maven 相关

 

- 本地仓库设置:

- 在 IDE(如 IntelliJ IDEA)中可以设置 Maven 的本地仓库路径,本地仓库用于存储从远程仓库下载的依赖库,方便项目重复使用。

- 仓库关系:

- 项目:开发中的项目,会依赖于各种库和插件。

- 本地仓库:位于本地计算机上的仓库,存储了项目所需的依赖库。

- 中央仓库:Maven 默认的远程仓库,包含了大量开源的库和插件。

- 私服(私有服务器):组织内部搭建的私有 Maven 仓库,用于存储内部项目的依赖库,需要一定的权限才能访问。

- 项目首先会从本地仓库查找依赖,如果找不到,会从私服或中央仓库下载到本地仓库,然后再使用。

- Maven 仓库地址:

- 远程仓库地址:例如  http://repo1.maven.org/maven2/  是 Maven 中央仓库的地址。

- 仓库的查询:可以通过一些网站(如  https://mvnrepository.com/ )来查询 Maven 仓库中各种库的信息,包括依赖配置、版本等。

 

二、Spring Boot 项目创建

 

- IntelliJ IDEA 版本:

- 专业版(Ultimate Edition):功能更强大,对于 Spring Boot 开发,专业版通常不需要额外安装插件就可以很好地支持。

- 社区版(Community Edition):功能相对较少,可能需要安装 Spring Boot 插件来支持 Spring Boot 项目的创建和开发。

- 项目属性设置:

- Group Id:组织 ID,通常是公司或组织的域名倒序,例如  com.example 。

- Artifact Id:项目 ID,是项目的唯一标识符,例如  spring-boot-demo 。

- Version:项目版本,例如  0.0.1-SNAPSHOT ,其中  SNAPSHOT  表示快照版本,是不稳定的版本,可能会发生变化; RELEASE  版本是稳定的版本。

- Language:项目使用的语言,这里是  Java 。

- Project type:项目类型,这里是  Maven 。

- Packaging:打包方式,这里是  jar (Java Archive),表示项目将被打包成一个可执行的 JAR 文件。

- Java version:项目使用的 Java 版本,这里是  17 。

- Project name:项目名称,例如  spring-boot-demo 。

- Project description:项目描述,对项目的简单说明。

- Package name:包名,通常是  Group Id  和  Artifact Id  的组合,例如  com.example.springbootdemo 。

- 项目结构:

- 创建好的 Spring Boot 项目会有标准的 Maven 项目结构,包括  src/main/java (存放 Java 源代码)、 src/main/resources (存放配置文件和资源文件)、 src/test/java (存放测试代码)等目录,以及  pom.xml (Maven 的项目对象模型文件,用于配置项目的依赖和构建信息)。

 

三、依赖版本选择

 

- 对版本有要求:

- 按照指定的版本号来引入依赖,确保项目使用特定版本的库。

- 对版本无要求:

- 看团队默认:根据团队的约定来选择版本。

- 建议使用交叉版本:这里的“次”不是指第二个,而是表示相对比较新的版本,例如在选择依赖版本时,可以选择比当前最新版本稍旧但相对稳定的版本。

 

四、其他内容

 

- 开发方向和学习建议:

- 实习和课程并行:在完成项目后,可以尝试找实习;如果找不到实习,就继续看课学习。

- 依赖配置示例:

- 展示了 Maven 依赖的配置格式,包括  groupId (组织 ID)、 artifactId (项目名称)和  version (版本)。例如:

 

<dependency>

    <groupId>mysql</groupId>

    <artifactId>mysql-connector-java</artifactId>

    <version>8.0.33</version>

</dependency>

 

 

这里  mysql  是组织 ID, mysql-connector-java  是项目名称, 8.0.33  是版本号。

- 版本号的含义:

- 版本号通常由大版本、中版本和小版本组成,例如  1.0.0 。大版本通常表示有重大的变更,可能不兼容之前的版本;中版本可能表示有一些新功能的增加;小版本通常表示一些 bug 的修复。

- 还有一些特殊的版本号,如  20bug  可能表示修复了 20 个 bug 的版本, 1.0.1  可能表示相对中等需求的版本, 2.0.0  可能表示有大需求变更或项目重构等。

- 开发人员的代码测试:

- 开发人员的代码首先应该由自己进行测试,包括功能测试和编写单元测试用例,确保代码的正确性和稳定性。

- 约定大于配置:

- 这是一种软件开发的理念,强调通过约定来减少配置。例如在 Spring Boot 中,有很多默认的配置,开发人员不需要进行过多的配置就可以快速搭建项目。这些内容对于学习和使用 Maven 以及 Spring Boot 进行项目开发有很大的帮助,涵盖了从环境设置、项目创建到依赖管理和开发规范等多个方面。

 

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

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

相关文章

Android Handler 消息机制

常用场景&#xff1a; 子线程发送Message 主线程处理Message 子线程发送消息 public final boolean sendEmptyMessageDelayed(int what, long delayMillis) {Message msg Message.obtain();msg.what what;return sendMessageDelayed(msg, delayMillis);}public final boole…

day9 串口通信

1串口通信串口通信是嵌入式系统和电子设备中最常用的 异步串行通信 方式&#xff0c;核心是通过 TX&#xff08;发送&#xff09; 和 R&#xff08;接收&#xff09; 两根线实现全双工数据传输。2通信协议分类2.1同步/异步通信同步和异步是串行通信中两种根本不同的数据传输方式…

面向对象的设计模式

一、设计模式简介1、什么是设计模式针对反复出现的问题所总结归纳出的通用解决方设计模式是指在软件开发过程中案。这些方案是众多软件开发人员经过大量实践总结出来的&#xff0c;具有高效性、可维护性和可扩展性等优点。使用设计模式可以帮助开发者更高效地构建软件系统&…

每日钉钉API探索:chooseDepartments专注于部门维度的选择接口

在企业级应用开发过程中&#xff0c;针对组织架构中的部门进行操作是非常常见的需求。今天我们要介绍的是钉钉的chooseDepartments API&#xff0c;它允许用户以部门为单位进行选择&#xff0c;并返回所选部门的相关信息。&#x1f4cc; 功能概述chooseDepartments API主要用于…

生产环境CI/CD流水线构建与优化实践指南

生产环境CI/CD流水线构建与优化实践指南 目录 业务场景描述技术选型过程实现方案详解 流水线结构设计并行构建与缓存策略部署策略&#xff1a;滚动、蓝绿、金丝雀回滚与告警自动化 踩过的坑与解决方案总结与最佳实践 业务场景描述 某大型电商平台&#xff0c;为了保证代码持续交…

腾讯云和火山云优劣势对比

从问题本身看&#xff0c;用户没有限定具体场景&#xff0c;说明可能需要一个全面的横向对比。不过云计算服务涉及面太广&#xff0c;我最好先搭建一个框架性的分析结构&#xff0c;再填充具体细节。 首先想到从几个核心维度切入&#xff1a;基础能力&#xff08;计算存储网络&…

Augment AI 0.502.0版本深度解析:Task、Guidelines、Memory三大核心功能实战指南

Augment AI 0.502.0版本深度解析&#xff1a;Task、Guidelines、Memory三大核心功能实战指南 augment最新版辅助功能全解析续杯免费额度再用满教程|memory|userguidlines|tasksaugment最新插件功能教程前言 在AI辅助编程领域&#xff0c;Augment AI作为一款强大的VS Code插件&…

docker搭建、小皮面板搭建、bp使用、msf

docker搭建Vulhub靶场 docker安装 apt-get install docker.io docker-compose#设置docker代理&#xff1a;创建文件夹以及对应的文件 mkdir /etc/systemd/system/docker.service.d#在该文件中配置自己的代理ip以及代理端口 vim /etc/systemd/system/docker.service.d/http-p…

AI优化器美国VPS集成:智能算力部署与性能调优指南

在当今数字化浪潮中&#xff0c;AI优化器与高性能VPS的融合正成为企业技术架构的核心竞争力。本文将深入解析美国VPS服务器如何通过AI驱动的智能优化技术实现算力突破&#xff0c;从资源配置算法到实时流量调度&#xff0c;全面揭示这种创新组合在跨境电商、大数据分析等场景中…

【保姆级图文详解】Spring AI 中的工具调用原理解析,工具开发:文件操作、联网搜索、网页抓取、资源下载、PDF生成、工具集中注册

目录前言一、Spring AI 中的工具调用&#xff08;Tool Calling&#xff09;1.1、概念1.2、工作原理1.3、技术选型1.4、原理解析1.4.1、实现接口1.4.2、工具调用二、工具调用&#xff08;Tool Calling&#xff09;开发2.1、文件操作2.1.1、概念描述2.1.2、概念描述2.2、联网搜索…

Redis客户端使用(Client、Java、SpringBoot)

上篇文章&#xff1a; Redis数据类型之zsethttps://blog.csdn.net/sniper_fandc/article/details/149139955?fromshareblogdetail&sharetypeblogdetail&sharerId149139955&sharereferPC&sharesourcesniper_fandc&sharefromfrom_link 目录 1 Redis客户端…

Modbus 开发工具实战:ModScan32 与 Wireshark 抓包分析(一

引言 ** 在工业自动化领域&#xff0c;Modbus 协议犹如一座桥梁&#xff0c;连接着各种电子设备&#xff0c;实现它们之间高效的数据交互。从可编程逻辑控制器&#xff08;PLC&#xff09;到人机界面&#xff08;HMI&#xff09;&#xff0c;再到各类智能传感器&#xff0c;M…

Oracle SQL - 使用行转列PIVOT减少表重复扫描(实例)

[13/JUL/2025, Yusuf Leo, Oracle SQL Performance Tuning Series]我们经常会遇到从同一表中按不同维度取出不同区间的数据&#xff0c;再以相同的属性将这些数据分别汇总到一起的需求。这类需求往往迫使我们对同一个表反复去扫描&#xff0c;当原始数据量太大的时候&#xff0…

HTTP 请求方法详解:GET、POST、PUT、DELETE 等

在 HTTP 协议中&#xff0c;请求方法&#xff08;也称为 HTTP 动词&#xff09;定义了客户端希望对指定资源执行的操作类型。这些方法是 HTTP 报文的核心组成部分&#xff0c;决定了请求的目的和行为。 主要 HTTP 请求方法 1. GET 用途&#xff1a;获取资源 特点&#xff1a…

Android 代码热度统计(概述)

1. 前言 代码热度统计&#xff0c;在测试中一般也叫做代码覆盖率。一般得到代码覆盖率后就能了解整体样本在线上的代码使用情况&#xff0c;为无用代码下线提供依据。 做了一下调研&#xff0c;在Android中一般比较常用的是&#xff1a;JaCoCO覆盖率统计工具&#xff0c;它采…

RAG优化

RAG搭建本地AI知识库&#xff0c;在使用过程中遇到的三大痛点&#xff0c;以及相应的进阶方案。1. RAG知识库的三大痛点-- 内容理解不足&#xff1a;AI难以全面理解导入资料的内容&#xff0c;比如在向量编码时候&#xff0c;生硬的截断等导致分析结果不理想。eg: 知识库分割器…

Ubuntu 24.04 启用 root 图形登录

关键词&#xff1a;Ubuntu 24.04、root 登录、GDM、SSH、nano、配置文件一、前言 Ubuntu 默认禁用 root 账户 的图形与 SSH 登录&#xff0c;这是为了安全。但在某些场景&#xff08;如测试、救援、自动化脚本&#xff09;你可能需要 直接用 root 登录 GNOME 桌面。本文以 Ubun…

Jekyll + Chirpy + GitHub Pages 搭建博客

Chirpy 是适用于技术写作的简约、响应迅速且功能丰富的 Jekyll 主题&#xff0c;文档地址&#xff1a;https://chirpy.cotes.page/ &#xff0c;Github 地址&#xff1a;jekyll-theme-chirpy 。 1.开始 打开 chirpy-starter 仓库&#xff0c;点击按钮 Use this template -->…

学习 Flutter (一)

学习 Flutter (一) 1. 引言 什么是 Flutter&#xff1f; Flutter 是 Google 开发的一套开源 UI 框架&#xff0c;主要用于构建高性能、高保真、跨平台的应用程序。使用一套 Dart 编写的代码&#xff0c;开发者可以同时构建适用于&#xff1a; Android iOS Web Windows、mac…

Spring Boot 实现图片防盗链:Referer 校验与 Token 签名校验完整指南

Spring Boot 实现图片防盗链教程&#xff08;Referer 校验 Token 签名校验&#xff09;本文将详细讲解两种防盗链实现方案&#xff0c;并提供完整代码示例。方案一&#xff1a;Referer 校验通过检查 HTTP 请求头中的 Referer 字段判断来源是否合法。实现步骤创建 Referer 拦截…