Spring Boot项目的搭建和运行

news2024/11/26 8:58:27

✨Spring Boot项目的搭建和运行

  • 🍑Spring Boot概述
    • 🍊🍊传统框架技术存在的问题
    • 🍊🍊主要特点
    • 🍊🍊环境要求
  • 🍑聚合工程/父子模块
  • 🍑第一个Spring Boot项目
  • 🍑目录结构
  • 🍑spring-boot-devtools

📃个人主页: 不断前进的皮卡丘
🌞博客描述: 梦想也许遥不可及,但重要的是追梦的过程,用博客记录自己的成长,记录自己一步一步向上攀登的印记
🔥网站推荐:千里之行,始于足下。每天坚持刷题,巩固所学知识,也为将来找工作,面试做好准备----- 刷题神器

🍑Spring Boot概述

Spring Boot是由Pivotal团队提供的全新框架,它的设计目的是用来简化Spring应用的初始搭建以及开发过程。这个框架使用了特定的方式来进行配置, 使得开发人员不再需要定义样板化的配置。
官网地址https://spring.io/projects/spring-boot

🍊🍊传统框架技术存在的问题

  • 依赖太多,而且存在版本问题
  • 配置太多,而且每一次都是一样的,所以我们一般都是复制粘贴
  • 部署也比较麻烦,需要tomcat部署,项目结构也需要按照JavaEE的目录结构来写

🍊🍊主要特点

  • 简化依赖(starters)
  • 自动配置(auto—configuration)
  • 嵌入tomcat(Spring Boot有内置的tomcat,不需要我们手动部署)
  • 传统项目部署成war包,Spring Boot项目打包成jar包就可以运行
  • jar包和war包的区别

🍊🍊环境要求

  • JDK8.0+
  • maven 3.3+
  • Spring Framework 4+
  • Tomcat 9.0
  • Idea 2018版本+

🍑聚合工程/父子模块

在工程中使用maven可以简化开发和搭建的过程,但是如果产品线庞大,包含的模块繁多时,各个模块间版本管理就会产生不一致现象,从而给维护和开发带来难题
一般情况,我们采用聚合多个关联的模块,这样子模块就可以使用父亲=模块中的相关配置,我们称为聚合工程或父子工程
在这里插入图片描述
创建空项目
在这里插入图片描述
在这里插入图片描述
然后创建新模块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
因为父模块做依赖管理,并没有涉及到业务逻辑,我们把src删除,然后通过pom.xml来进行依赖管理
在这里插入图片描述
新建子模块(子模块可以独立部署运行,可以是web项目,也可以是Java项目)
在这里插入图片描述
新建一个maven模块,不需要选择模板,直接next
在这里插入图片描述
同样的步骤,再创建一个子模块,然后就变成了这样
在这里插入图片描述
在这里插入图片描述
dependency会真正的下载依赖,dependencyManagenet并不会真正的下载依赖,它是对依赖进行定义
在这里插入图片描述
在这里插入图片描述
接下来,新建一个通用模块
在这里插入图片描述
把resources和test目录删除
在这里插入图片描述
在这里插入图片描述
如果一般模块想要使用通用模块,我们可以把对应的依赖引用过来。也就是说子模块间可以通过依赖调用通用模块,实现代码的调用
在这里插入图片描述
在这里插入图片描述

🍑第一个Spring Boot项目

file---->new project
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
直接运行启动类
在这里插入图片描述
编写一个类,输出hello spring boot!在这里插入图片描述

🍑目录结构

在这里插入图片描述

🍑spring-boot-devtools

Spring Boot提供了spring-boot=devtols这个模块来使应用支持热部署(代码修改后,会自动打包,部署项目),可以提高开发效率,不需要手动重启Spring Boot应用就可以实现自动加载
新建项目
在这里插入图片描述
在这里插入图片描述

  • 添加依赖
    • 创建项目的时候勾选或者手动添加
<!-- 热部署 -->
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
  • 全局配置
 # 热部署生效  
spring.devtools.restart.enabled=true
# 无需重启目录
spring.devtools.restart.exclude=static/**,xxx/**

在这里插入图片描述

  • IDEA配置(如果发现热部署无效,就得手动设置一下)
    • (1)File---->Settings----->Builder---->Compiler---->Build Project automatically

    • 在这里插入图片描述

    • (2)ctrl + shift + alt + / :勾选上Registry,勾上Compiler autoMake allow when app running
      可以通过help---->Find Action
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

如果找不到这个选项的话, 到File | Settings | Advanced Settings 目录下,将下图选项勾上

在这里插入图片描述

  • 测试
    在这里插入图片描述

  • 当我们修改代码的时候,等一小会,项目会自动打包,重新部署

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

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

相关文章

《UNUX环境高级编程》(1)UNIX基础

1、引言 2、UNIX体系结构 操作系统 一种软件&#xff0c;控制计算机硬件资源&#xff0c;提供程序运行环境。操作系统包含了内核和一些其他软件&#xff08;如shell、公用函数库、应用程序等&#xff09;。例如Linux就是GNU操作系统的内核&#xff0c;因此也称为GNU/Linux操作…

Netty实战(十五)

UDP广播事件&#xff08;一&#xff09;UDP简介和示例程序 一、UDP基础1.2 UDP介绍1.2.1 UDP和TCP的区别 1.3 UDP广播1.3.1 单播模式1.3.2 UDP的传输模式 二、UDP示例程序三、消息 POJO: LogEvent 一、UDP基础 到目前为止&#xff0c;我们已经见过的绝大多数的例子都使用了基于…

Android系统中最重要的一个组件【Framework】

Android Framework是Android系统中最重要的一个组件&#xff0c;它为Android应用开发者提供了一套完整而稳定的API框架&#xff0c;可以方便地实现各种应用功能。Android市场对Framework的需求量非常大&#xff0c;尤其在当前移动互联网时代&#xff0c;Android应用的市场需求也…

SpringCloud Alibaba-Nacos

SpringCloud Alibaba-Nacos 1. Nacos安装1.1 Nacos概要1.2 Nacos架构1.3 Nacos安装1.3.1 单机模式 Derby安装1.3.2 单机模式 MySQL安装1.3.3 Docker 安装Nacos 2 Nacos功能应用2.1 Nacos服务注册与发现2.2 负载均衡2.3 配置中心2.3.1 配置管理2.3.2 多环境切换2.3.3 共享/扩展 …

Spark集群部署和启动与关闭

上一篇我们讲了Hadoop集群部署和启动与关闭&#xff0c;今天我们讲一下Spark集群部署和启动与关闭。首先我们先来了解一下Spark集群部署模式&#xff0c;分别有以下三种&#xff1a; Standalone   Standalone&#xff08;独立模式&#xff09;是Spark一种简单的集群部署模式&…

随着用户体验质量的不断追求,性能优化成了Android开发中的重要一方面

在移动互联网时代&#xff0c;Android系统的使用越来越广泛&#xff0c;而随着用户对体验质量的不断追求&#xff0c;性能优化已经成为了Android应用开发中的重要方面。以下是对Android市场对性能优化的需求量及应用广度进行详细分析的几个方面。 1. 用户需求 随着Android系统…

DataLeap的全链路智能监控报警实践(三): 系统实现

系统实现 整体架构 基线 管理模块&#xff1a;负责基线创建、更新、删除等操作&#xff0c;管理基线元信息&#xff0c;包括保障任务&#xff0c;承诺时间&#xff0c;余量及报警配置等&#xff09;&#xff1b; 基线 实例生成&#xff1a;系统每天定时触发生成基线实例&#x…

2023 年最新互联网 Java 面试八股文出炉(附大厂 P5-P8 技术栈)

为什么感觉 Java 面试变难了&#xff1f; 几年前&#xff0c;你只需要简单的 ssm 框架&#xff0c;就能轻松找到一份 Java 的工作&#xff0c;但现在不一样了&#xff0c;随着涌入这个行业的人越来越多&#xff0c;同一个岗位需要筛选掉更多人&#xff0c;要求自然水涨船高&am…

ubuntu 20.04 aarch64 平台交叉编译 opencv 静态库

编译环境 win10 64 位 VMware Workstation Pro 16 虚拟机 虚拟机安装 ubuntu 20.04 opencv 版本&#xff1a; 来自 github 当前最新 4.7 目的 交叉编译 opencv 生成静态库&#xff08;.a&#xff09;&#xff0c;用于 嵌入式 aarch64 平台。 环境配置方法 参考上一篇 u…

基于Java汽车配件销售业绩管理系统设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a; ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精…

@vue/cli脚手架

2. vue/cli脚手架 2.1vue/cli 脚手架介绍 目标: webpack自己配置环境很麻烦, 下载vue/cli包,用vue命令创建脚手架项目 vue/cli是Vue官方提供的一个全局模块包(得到vue命令), 此包用于创建脚手架项目脚手架是为了保证各施工过程顺利进行而搭设的工作平台 2.2 vue/cli 目录和代…

Camera | 11.瑞芯微摄像头采集图像颜色偏绿解决笔记

前言 在实际调试基于瑞芯微平台的camera过程中&#xff0c;发现显示的图片发绿&#xff0c; 现在把调试步骤分享给大家&#xff1a; 1、修改iq文件 sdk中位置&#xff1a; external/camera_engine_rkaiq/iqfiles/isp21/ov13850_ZC-OV13850R2A-V1_Largan-50064B31.xml【现在…

EBU5476 Microprocessor System Design 知识点总结_1 Introduction

主要学习自北邮国院物联网工程大三下学期微处理器课程。 Introduction-随便聊 嵌入式系统是什么&#xff1f;专用的计算机系统。为专门功能可能对计算机架构&#xff0c;外设等做出一些取舍。 通常的限制&#xff1a;Cost&#xff08;比如大量部署传感器节点&#xff09;&am…

基础知识学习---牛客网C++面试宝典(二)C/C++基础之C++内存

1、本栏用来记录社招找工作过程中的内容&#xff0c;包括基础知识学习以及面试问题的记录等&#xff0c;以便于后续个人回顾学习&#xff1b; 暂时只有2023年3月份&#xff0c;第一次社招找工作的过程&#xff1b; 2、个人经历&#xff1a; 研究生期间课题是SLAM在无人机上的应…

深入理解深度学习——注意力机制(Attention Mechanism):带掩码的多头注意力(Masked Multi-head Attention)

分类目录&#xff1a;《深入理解深度学习》总目录 相关文章&#xff1a; 注意力机制&#xff08;AttentionMechanism&#xff09;&#xff1a;基础知识 注意力机制&#xff08;AttentionMechanism&#xff09;&#xff1a;注意力汇聚与Nadaraya-Watson核回归 注意力机制&#…

想了解会计软件吗?来看看Zoho Books的功能和特点

Zoho Books 是一款功能强大的在线会计软件&#xff0c;为企业提供多合一解决方案&#xff0c;该解决方案可定制、可扩展&#xff0c;并使始终保持合规。 轻松生成电子发票 在Zoho Books中&#xff0c;您可以通过包含电子发票架构中提到的所有必填字段来创建电子发票格式的发票。…

css 包含块

你不知道的 CSS 之包含块 一说到 CSS 盒模型&#xff0c;这是很多小伙伴耳熟能详的知识&#xff0c;甚至有的小伙伴还能说出 border-box 和 content-box 这两种盒模型的区别。 但是一说到 CSS 包含块&#xff0c;有的小伙伴就懵圈了&#xff0c;什么是包含块&#xff1f;好像…

【啃】《Java核心卷 一》 | 第一,二章

文章目录 《Java核心技术卷 一》第一章 概述第二章 Java编程环境 图书推荐 《Java核心技术卷 一》 第一章 概述 前言&#xff1a;本书与一些”0基础入门“的书定位感觉是不太一样的&#xff0c;可能就像书名所说&#xff0c;是”核心技术“叭。书中经常将Java语言与 c 进行对比…

无损网络理论和实践

一、为什么需要无损网络&#xff1f; 随着高性能计算、大数据分析、人工智能以及物联网等技术的飞速发展&#xff0c;集中式存储、分布式存储以及云数据库的普及等原因&#xff0c;业务应用有越来越多的数据需要从网络中获取&#xff0c;这对数据中心网络的交换速度和性能要求…

Linux :: 权限篇:【1】:Linux 下文件访问者身份说明:三人一组!【补充:Linux下用户类型的分类!】

系列文章说明 前言&#xff1a;本篇是 Linux 基本操作篇章的内容&#xff01; 笔者使用的环境是基于腾讯云服务器&#xff1a;CentOS 7.6 64bit。 学习集推荐&#xff1a; C 入门到入土&#xff01;&#xff01;&#xff01;学习合集Linux 从命令到网络再到内核&#xff01;学习…