SpringBoot学习(一)

news2025/1/22 18:58:39

注:此为笔者学习狂神说SpringBoot的笔记,其中包含个人的笔记和理解,仅做学习笔记之用,更多详细资讯请出门左拐B站:狂神说!!!

Spring Boot 是一种基于 Spring 框架的开发模式,旨在简化 Spring 应用程序的创建和开发。它提供了一种快速、便捷的方式来构建基于 Spring 的应用,减少了开发者在项目配置上的工作,使得开发者可以更专注于业务逻辑的实现 。以下是对 Spring Boot 的详细解释:

主要特性:
1、自动配置(Auto-Configuration)
Spring Boot 提供了大量的默认配置,根据项目的依赖和环境自动进行配置,大大减少了繁琐的配置工作。
开发者可以根据需要进行定制化配置,但在很多情况下,不需要手动配置。

2、起步依赖(Starter Dependencies)
Spring Boot 提供了一系列的“起步依赖”,这是预配置的依赖库集合,用于简化特定类型应用的构建。
例如,spring-boot-starter-web 包含了构建 Web 应用所需的所有依赖。

3、嵌入式 Web 服务器
Spring Boot 支持嵌入式的 Web 服务器(如Tomcat、Jetty、Undertow),无需外部容器即可运行 Web 应用。
开发者可以选择使用自己喜欢的嵌入式服务器,也可以将应用打包为传统的 WAR 文件并部署到外部容器。

4、简化的配置
Spring Boot 使用约定大于配置的原则,采用一些默认值和命名约定,使得配置文件变得简单明了。
配置文件支持多种格式,包括 YAML、Properties 等。

5、生产就绪(Production-Ready)
Spring Boot 提供了一些有关监控、性能调优等方面的功能,使应用更容易在生产环境中部署和运行。

第一个SpringBoot程序

在这里插入图片描述

创建多个功能包:(必须在和application同一级目录下创建功能包)

在这里插入图片描述

在这里插入图片描述

POM文件的主要内容:

在这里插入图片描述

在这里插入图片描述

spring-boot-starter所有的springboot依赖都是以这个开头的

在这里插入图片描述

使用打jar包工具

在这里插入图片描述

在这里插入图片描述

利用poweShell就可以打开jar包,运行程序,体现微服务的特性,微服务开发就是将服务拆成一个个服务块

在这里插入图片描述

创建项目:

在这里插入图片描述

在这里插入图片描述

双层结构的网页

在这里插入图片描述

通过利用 热部署 ,可以在修改网页后,不重启上传修改后的页面

更改项目的端口号:

在这里插入图片描述

修改banner图标:

在这里插入图片描述

在这里插入图片描述

原理窥探

自动装配配置

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

主程序启动类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

yaml语法

创建测试项目:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

yaml相比较xml文件配置信息会简单简洁很多,但是学习过程最好都学学有所了解。

在这里插入图片描述

在这里插入图片描述

给属性赋值的几种方式

利用yaml语法给实体类赋值

在这里插入图片描述

在这里插入图片描述

  • 先在类的上面添加@Componet注解,让类成为spring的控件

在这里插入图片描述

在这里插入图片描述

  • @ConfigurationProperties(prefix=?)

在这里插入图片描述

在这里插入图片描述

使用properties来给属性赋值

在这里插入图片描述

  • 利用@PropertySource:配置源,加载指定的配置文件,并用SPEL表达式去除配置文件的值

在这里插入图片描述

- 属性值还可以添加随机符号

在这里插入图片描述

传统的spring的@Value方式注入值

在这里插入图片描述

- @ConfigurationProperties的优点

在这里插入图片描述

JSR303校验

松散绑定

在这里插入图片描述

  • 注意:注解一定要放在需要放在的变量、类、方法上面,不能夹层放

在这里插入图片描述

JSP303校验

在这里插入图片描述

- 添加@Validated注解,用于数据检验

在这里插入图片描述

在这里插入图片描述

  • 学会找到注解原码的位置

在这里插入图片描述

多环境配置及配置文件的位置

配置文件的位置

在这里插入图片描述

  • file目录下的config文件里

    在这里插入图片描述

  • 在file目录下

    在这里插入图片描述

  • 在类路径下的config目录里

在这里插入图片描述

  • 默认的正常位置Resource目录下,优先级最低

四种级别的for example

在这里插入图片描述

多环境配置

利用propertis

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 通过多个配置文件可以配套多套数据库
  • active为激活的意思

利用yaml

在这里插入图片描述

在这里插入图片描述

由配置文件再去理解自动装配原理

在这里插入图片描述

在这里插入图片描述

  • 多理解几遍这里

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

SpringBoot学习(一)的学习笔记到此完结,笔者归纳、创作不易,大佬们给个3连再起飞吧

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

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

相关文章

学生管理系统(vue + springboot)

学生管理系统(vuespringboot)资源-CSDN文库 项目介绍 这是一个采用前后端分离开发的项目,前端采用 Vue 开发、后端采用 Spring boot Mybatis 开发。 项目部署 ⭐️如果你有 docker 的话,直接 docker compose up 即可启动&#…

NullByte

信息收集 # nmap -sn 192.168.1.0/24 -oN live.nmap Starting Nmap 7.94 ( https://nmap.org ) at 2023-12-29 09:23 CST Nmap scan report for 192.168.1.1 Host is up (0.00038s latency). MAC Address: 00:50:56:C0:00:08 (VMware) Nmap scan report for …

使用软件解决T490笔记本57摄氏度温度墙的问题

项目场景: 提示:这里简述项目相关背景: 客户使用LenovoT490跑GQRX SDR,接入SDR在5MHz采样率下,机器卡顿。这对于10代i7CPU显然是不正常的。后续发现上网页也卡,卸载杀毒、重装系统、BIOS电源设置、系统最…

uniapp的css样式图片大小截图展示

目录 截取图片前截取图片后第一种方式&#xff1a;代码第二种方式&#xff1a;代码最后 截取图片前 截取图片后 第一种方式&#xff1a;代码 <view class"swiper-box-img"><image class"swiper-box-img-img" :src"item.file_path" mod…

10TB海量JSON数据从OSS迁移至MaxCompute

前提条件 开通MaxCompute。 在DataWorks上完成创建业务流程&#xff0c;本例使用DataWorks简单模式。详情请参见创建业务流程。 将JSON文件重命名为后缀为.txt的文件&#xff0c;并上传至OSS。本文中OSS Bucket地域为华东2&#xff08;上海&#xff09;。示例文件如下。 {&qu…

【后端】Docker学习笔记

文章目录 Docker一、Docker安装&#xff08;Linux&#xff09;二、Docker概念三、Docker常用命令四、数据卷五、自定义镜像六、网络七、DockerCompose Docker Docker是一个开源平台&#xff0c;主要基于Go语言构建&#xff0c;它使开发者能够将应用程序及其依赖项打包到一个轻…

Linux:apache优化(1)—— 长链接/保持连接

系统:CentOS 7.9 apache版本为&#xff1a;2.4.25 需要使用源码包进行安装才能够使用这些扩展模块 在使用这些扩展模块前要先下载zlib-devel 安装--enable-deflate选项需要的网页压缩传输的软件包 yum -y install zlib-devel 在配置编译安装时需要使用扩展配置 ./config…

【瞎折腾/3D】无父物体下物体的旋转与移动

目录 说在前面移动World SpaceLocal Space 旋转World SpaceLocal Space 代码 说在前面 测试环境&#xff1a;Microsoft Edge 120.0.2210.91three.js版本&#xff1a;0.160.0其他&#xff1a;本篇文章中只探讨了无父对象下的移动与旋转&#xff0c;有父对象的情况将在下篇文章中…

2024-01-01 事业-代号s-科特勒《营销管理》-分析

摘要: 2024-01-01 事业-代号s-科特勒《营销管理》-分析 科特勒《营销管理》-分析 营销管理 - 思维导图 01 理解营销管理 这本书不仅从概念出发介绍了营销管理的定义、职能和计划&#xff0c;还拆解了每一个管理环节策划的具体实施方法。通过下面这张思维导图&#xff0c;我们…

分布式数据库事务故障恢复的原理与实践

关系数据库中的事务故障恢复并不是一个新问题&#xff0c;自70年代关系数据库诞生之后就一直伴随着数据库技术的发展&#xff0c;并且在分布式数据库的场景下又遇到了一些新的问题。本文将会就事务故障恢复这个问题&#xff0c;分别讲述单机数据库、分布式数据库中遇到的问题和…

深度学习 | 编码器-解码器网络、seq2seq模型、束搜索算法

我们知道传统RNN输入和输出数据是等长的&#xff0c;这显然极大限制了他的应用范围。 前面几节我们讲到的循环神经网络的各种变体基本上都在解决一个序列的问题。还有一大类问题涉及到的是两个序列间转换。它是自然语言处理中的一个重要领域&#xff0c;包括机器翻译、语音识别…

go slice源码探索(切片、copy、扩容)和go编译源码分析

文章目录 概要一、数据结构二、初始化2.1、字面量2.2、下标截取2.2.1、截取原理 2.3、make关键字2.3.1、编译时 三、复制3.1、copy源码 四、扩容4.1、append源码 五&#xff1a;切片使用注意事项六&#xff1a;参考 概要 Go语言的切片&#xff08;slice&#xff09;是对数组的…

FA对接FC流程

2、FA进行对接 &#xff08;1&#xff09;首先安装好AD域控服务器DHCPDNS&#xff08;注意&#xff0c;不要忘记了做DNS正反向解析&#xff0c;就是把已经安装了ITA的主机做解析&#xff09;&#xff0c;在里面创建域用户 &#xff08;2&#xff09;安装ITA和VAG/VLB&#xf…

Redis7.2.3(Windows版本)

1、解压 &#xfeff; &#xfeff; 2、设置密码 &#xff08;1&#xff09; 右击编辑redis.conf文件&#xff1a; &#xfeff; &#xff08;2&#xff09; 设置密码。 &#xfeff; 3、测试密码是否添加成功 &#xfeff; 如上图所示&#xff0c;即为成功。 4、设置…

Redis(Linux版本7.2.3)

1、停止Redis服务器 [roottssvr1-c1 sysconfig]# ps -ef | grep redis root 322 1 0 10月30 ? 02:58:53 ./bin/redis-server 0.0.0.0:6379 root 32664 12498 0 14:45 pts/0 00:00:00 grep --colorauto redis [roottssvr1-c1 sysconfig]# [roottssvr…

在Mac上恢复SD卡数据的 6 个有效应用程序

慌&#xff01;SD卡里的照片和视频不小心删了&#xff0c;Mac设备上还恢复不了数据&#xff01; 遇到这种情况&#xff0c;你需要的是一款可靠的Mac适用的SD卡恢复软件。我们为你准备了一份最佳的SD卡恢复软件列表&#xff0c;并且还有详细的评论。另外&#xff0c;我们还会给…

vue中常见的指令

简单介绍一下常见的vue中用到的指令 v-on 指定当前的事件&#xff0c;语法糖为&#xff0c;如例子所示&#xff0c;指定按钮的事件为addCounter&#xff0c;点击会使变量counter 1 <!DOCTYPE html> <html><head><meta charset"utf-8" />…

CSS2_基础学习

CSS2_基础学习 一、css基础知识二、css选择器2.0 选择器的优先级2.1 CSS基本选择器2.2 复合选择器2.2.1. 交集选择器2.2.2. 并集选择器2.2.3. 后代选择器&#xff08;加空格&#xff09;2.2.4. 子代选择器2.2.5. 兄弟选择器2.2.6. 属性选择器2.2.7. 伪类选择器2.2.8. 伪元素选择…

zabbix通过自动发现-配置监控项、触发器(小白教程)

自动发现配置参考链接&#xff08;不小白&#xff0c;不友好&#xff09; zabbix-get介绍 1配置 zabbix server&#xff1a;版本7&#xff08;不影响&#xff09;,IP地址&#xff1a;192.168.0.60zabbix agent&#xff1a;版本agent1&#xff08;不影响&#xff09;&#xff…

基于Ubuntu环境Git服务器搭建及使用

基于Ubuntu环境Git服务器搭建及使用 Chapter1 搭建本地git服务器及详细操作步骤1.搭建本地git服务器1.1 环境1.2 服务端配置1.3 创建git专属用户1.4 创建git仓库1.5 配置免密登录基础 2.客户端拉取推送代码2.1客户端创建ssh公钥 2.2 免密配置3.仓库使用&#xff08;拉取及推送代…