从入门到精通:Spring Boot 100个技术关键词

news2024/11/16 15:27:13

Spring Boot 是一个基于Spring框架的快速开发框架,旨在简化Spring应用的初始搭建以及开发过程。通过掌握本指南中的100个关键技术关键词,你将逐步了解Spring Boot的核心概念、自动配置、依赖管理、Web开发、数据库操作、安全性、测试等方面的知识。每个关键词都配有详细的注释,帮助你轻松理解和应用。让我们一起开始这段精彩的Spring Boot学习之旅吧!

基础概念


Spring Boot - 一个基于Spring框架的快速开发框架,旨在简化Spring应用的初始搭建和开发过程。
Spring Framework - Spring框架,Spring Boot的基础,提供了依赖注入、事务管理等功能。
Starter Dependencies - 启动器依赖,用于简化依赖管理,提供一组常用的依赖。
Application Properties - 应用属性文件,用于配置Spring Boot应用的各种属性。
Application.yml - YAML格式的应用属性文件。
@SpringBootApplication - 注解,用于标记主类,包含@Configuration、@EnableAutoConfiguration和@ComponentScan。
@Configuration - 注解,用于标记配置类。
@ComponentScan - 注解,用于扫描组件。
@EnableAutoConfiguration - 注解,启用自动配置。
@Bean - 注解,用于定义一个Bean。
@Autowired - 注解,用于自动注入依赖。
@Controller - 注解,用于标记控制器类。
@RestController - 注解,用于标记RESTful控制器类。
@GetMapping - 注解,用于映射HTTP GET请求。
@PostMapping - 注解,用于映射HTTP POST请求。
@PutMapping - 注解,用于映射HTTP PUT请求。
@DeleteMapping - 注解,用于映射HTTP DELETE请求。
@PathVariable - 注解,用于从URL中提取路径变量。
@RequestParam - 注解,用于从请求参数中提取值。
@RequestBody - 注解,用于从请求体中提取数据。


自动配置


Auto-configuration - 自动配置,Spring Boot根据依赖自动配置应用。
Conditional Annotations - 条件注解,用于控制自动配置的条件。
@ConditionalOnClass - 注解,当类路径中存在指定类时生效。
@ConditionalOnMissingBean - 注解,当容器中不存在指定Bean时生效。
@ConditionalOnProperty - 注解,当配置文件中存在指定属性时生效。
@ConditionalOnBean - 注解,当容器中存在指定Bean时生效。
@ConditionalOnMissingClass - 注解,当类路径中不存在指定类时生效。
@ConditionalOnWebApplication - 注解,当应用是Web应用时生效。
@ConditionalOnNotWebApplication - 注解,当应用不是Web应用时生效。
@ConditionalOnExpression - 注解,当SpEL表达式为真时生效。


Web开发


Spring MVC - Spring的Web框架,用于处理HTTP请求。
DispatcherServlet - 前端控制器,负责调度请求。
ModelAndView - 用于返回模型和视图。
ViewResolver - 视图解析器,用于解析视图名称。
Thymeleaf - 模板引擎,用于渲染HTML模板。
FreeMarker - 模板引擎,用于渲染HTML模板。
RESTful - RESTful架构风格,用于设计Web服务。
@RestControllerAdvice - 注解,用于全局处理异常。
@ExceptionHandler - 注解,用于处理特定类型的异常。
@RequestMapping - 注解,用于映射HTTP请求。


数据库操作


Spring Data JPA - Spring Data的JPA模块,用于简化数据访问。
JpaRepository - 接口,提供了基本的CRUD操作。
@Entity - 注解,用于标记实体类。
@Table - 注解,用于指定实体类对应的数据库表。
@Id - 注解,用于标记主键。
@GeneratedValue - 注解,用于指定主键生成策略。
@Column - 注解,用于指定列名和属性。
@ManyToOne - 注解,用于表示多对一关系。
@OneToMany - 注解,用于表示一对多关系。
@ManyToMany - 注解,用于表示多对多关系。
@OneToOne - 注解,用于表示一对一关系。
@Transactional - 注解,用于开启事务管理。
DataSource - 数据源,用于连接数据库。
JdbcTemplate - 模板类,用于简化JDBC操作。
NamedParameterJdbcTemplate - 模板类,用于简化带命名参数的JDBC操作。
Flyway - 数据库迁移工具,用于管理数据库版本。
Liquibase - 数据库迁移工具,用于管理数据库版本。


安全性


Spring Security - Spring的安全框架,用于保护应用。
@EnableWebSecurity - 注解,启用Web安全配置。
@EnableGlobalMethodSecurity - 注解,启用全局方法安全配置。
@Secured - 注解,用于方法级别的安全控制。
@PreAuthorize - 注解,用于方法级别的安全控制。
@PostAuthorize - 注解,用于方法级别的安全控制。
@PreFilter - 注解,用于方法级别的过滤。
@PostFilter - 注解,用于方法级别的过滤。
UserDetailsService - 接口,用于加载用户详细信息。
AuthenticationManager - 接口,用于认证用户。
PasswordEncoder - 接口,用于加密密码。
HttpSecurity - 配置类,用于配置HTTP安全。
WebSecurityConfigurerAdapter - 抽象类,用于配置Web安全。


测试


JUnit - 单元测试框架,用于编写和运行测试用例。
Mockito - 模拟框架,用于创建模拟对象。
@Test - 注解,用于标记测试方法。
@RunWith - 注解,用于指定测试运行器。
@SpringBootTest - 注解,用于标记Spring Boot测试类。
@WebMvcTest - 注解,用于测试Web层。
@DataJpaTest - 注解,用于测试数据访问层。
@MockBean - 注解,用于创建模拟Bean。
@SpyBean - 注解,用于创建部分模拟Bean。
@Autowired - 注解,用于自动注入依赖。
MockMvc - 接口,用于模拟HTTP请求和响应。
Assertions - 类,用于断言测试结果。
@TestPropertySource - 注解,用于指定测试属性文件。
@ContextConfiguration - 注解,用于指定测试上下文配置。


日志


SLF4J - 简单的日志门面,用于统一日志记录。
Logback - 日志框架,Spring Boot默认的日志实现。
@Slf4j - 注解,用于注入日志对象。
logback-spring.xml - 日志配置文件,用于配置Logback。
logback.xml - 日志配置文件,用于配置Logback。
@Value - 注解,用于注入配置属性。
@Profile - 注解,用于指定配置文件。
@ConditionalOnProperty - 注解,用于根据属性值启用配置。
@ConditionalOnMissingBean - 注解,用于根据Bean是否存在启用配置。
@ConditionalOnClass - 注解,用于根据类路径中是否存在指定类启用配置。
@ConditionalOnMissingClass - 注解,用于根据类路径中不存在指定类启用配置。


高级特性


Actuator - 提供生产就绪的功能,如健康检查、度量等。
@EnableActuator - 注解,启用Actuator。
@Endpoint - 注解,用于定义Actuator端点。
@ReadOperation - 注解,用于定义读取操作。
@WriteOperation - 注解,用于定义写入操作。
这些关键词涵盖了Spring Boot的关键技术和应用场景,通过学习和实践这些关键词,你将逐步掌握Spring Boot的各个方面,成为Spring Boot使用专家。希望这份列表对你有所帮助!

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

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

相关文章

基于真实山地场景下的超多目标优化算法求解无人机三维路径规划,MATLAB代码

超多目标优化算法是一类专门用于解决存在三个以上目标函数的最优化问题的算法。这类问题在现实世界中非常常见,例如在工程设计、资源管理、机器学习等领域。由于目标之间的冲突性,很难找到一个单一的解来同时优化所有目标,因此超多目标优化算…

音视频入门基础:FLV专题(4)——使用flvAnalyser工具分析FLV文件

一、引言 有很多工具可以分析FLV格式,这里推荐flvAnalyser。其支持: 1.FLV 文件分析(Tag 列表、时间戳、码率、音视频同步等),HEVC(12)/AV1(13) or Enhanced RTMP v1 with fourCC(hvc1/av01); 2.RTMP/HTT…

全栈开发(二):springBoot3连接mysql数据库

spring.application.namedemo2 spring.datasource.urljdbc:mysql://localhost:3306/数据库名字?useUnicodetrue&characterEncodingUTF-8&serverTimezoneUTC spring.datasource.username账号 spring.datasource.password密码 spring.datasource.driver-class-namecom.m…

CentOS一键安装Mosquitto开源消息代理结合内网穿透实现远程连接

文章目录 前言1. Linux 搭建 Mosquitto2. Linux 安装Cpolar3. 创建MQTT服务公网连接地址4. 客户端远程连接MQTT服务5. 代码调用MQTT服务6. 固定连接TCP公网地址7. 固定地址连接测试 前言 今天和大家分享一下如何在Linux系统中搭建Mosquitto MQTT协议消息服务端,并结合Cpolar内…

IDEA 关闭自动补全功能(最新版本)

文章目录 一、前言二、关闭自动补全三、最终效果 一、前言 在最新的 IDEA 中发布了自动补全功能,当你输入代码时,IDEA 会自动显示你可能想输入的代码,减少手动输入的工作量,它会根据上下文提供正确的选项,提高代码的准…

计算机毕业设计 基于Python内蒙古旅游景点数据分析系统 Django+Vue 前后端分离 附源码 讲解 文档

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…

Vue3教程 - 2 开发环境搭建

更好的阅读体验:点这里 ( www.foooor.com ) 2 开发环境搭建 要进行 Vue 开发,需要安装 Node.js,因为构建 Vue 项目的工具,例如 Webpack、Vite等,这些工具依赖于Node.js环境来运行。 Node.js…

谷歌网站收录查询,怎么查看网站在谷歌的收录情况

在进行谷歌网站收录查询时,我们需采取一种既专业又系统的方法,以确保能够准确评估网站在谷歌搜索引擎中的可见性和收录状态。这一过程不仅关乎技术细节,还涉及到对搜索引擎优化(SEO)策略的理解与应用。以下是一个基于专…

视频无损压缩工具+预览视频生成工具

视频无损压缩工具 功能与作用 :视频无损压缩工具是一种能够减少视频文件大小,但同时保持视频质量的工具。它通过先进的编码技术和算法,有效降低视频文件的存储空间,同时保证视频的清晰度和观感。这对于需要分享或存储大量视频内容…

仓颉编程语言4,遇到BUG求助

本来准备整仓颉链接Mysql数据库。参考:GitCode - 全球开发者的开源社区,开源代码托管平台 这种方式是拿mysql官方的dll,编译一下,然后再封装成仓颉数据库驱动。这种方式不够逼格,所以准备解析mysql网络协议,从0开始写…

c++9月23日

1.My_string 头文件 #ifndef MY_STRINGHEAD_H #define MY_STRINGHEAD_H#include <iostream> #include <cstring> using namespace std;class My_string { private:char *ptr;//指向字符数组的指针int size;//字符数组的最大容量int len ;//当前字符串的长度 publ…

SaaS 软件转型计划

目录 一、转型目标 1、背景与趋势分析 2、转型策略与实施路径 3、预期成果与展望 二、现状分析 1、产品评估&#xff1a;从传统到SaaS的华丽转身 2、客户群体洞察&#xff1a;倾听需求&#xff0c;引领变革 3、销售渠道优化&#xff1a;拓宽路径&#xff0c;触达更多客…

python request库的使用

安装和使用 requests库支持python3.8&#xff0c;注意版本 pip install requests 在项目中引用时如下&#xff1a; import requests访问网站 request访问网站一般用get和post两种方式 get requests库提供了get方法&#xff0c;可以用get方式访问网站&#xff0c;相当于在浏览…

如何检测并阻止机器人活动

恶意机器人流量逐年增加&#xff0c;占 2023 年所有互联网流量的近三分之一。恶意机器人会访问敏感数据、实施欺诈、窃取专有信息并降低网站性能。新技术使欺诈者能够更快地发动攻击并造成更大的破坏。机器人的无差别和大规模攻击对所有行业各种规模的企业都构成风险。 但您的…

【Go】探索Go语言中的Map

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23 本期&#xff0c;我们对大语言模型在表情推荐, 软件安全和 自动化软件漏洞检测等方面如何应用&#xff0c;提供几篇最新的参考文章。 1 Semantics Preserving Emoji Recommendation with Large Language Mod…

高清8k电脑壁纸分享

Hello&#xff01;欢迎各位新老朋友来看小弟博客&#xff0c;祝大家事业顺利&#xff0c;财源广进&#xff01;&#xff01; 主题&#xff1a;高清壁纸分享 文件太大上传不上去&#x1f605;&#x1f605;&#x1f605;&#x1f605;&#x1f605;&#xff0c;需要的朋友自取&…

C语言 | Leetcode C语言题解之第433题最小基因变化

题目&#xff1a; 题解&#xff1a; int minMutation(char * start, char * end, char ** bank, int bankSize) {int m strlen(start);int **adj (int **)malloc(sizeof(int *) * bankSize);int endIndex -1;for (int i 0; i < bankSize; i) {adj[i] (int *)malloc(si…

手势手语识别数据集,YOLOv5目标检测两个数据集,图大量,模型精度高分别为近100类

手势手语识别数据集&#xff0c;YOLOv5目标检测 两个数据集&#xff0c;图大量&#xff0c;模型精度高分别为近100类 手势手语识别数据集&#xff08;Sign Language Gesture Recognition Dataset&#xff09; 数据集概述 该数据集专为手势手语识别设计&#xff0c;包含大量的…

Android平台Unity3D下如何同时播放多路RTMP|RTSP流?

技术背景 好多开发者&#xff0c;提到希望在Unity的Android头显终端&#xff0c;播放2路以上RTMP或RTSP流&#xff0c;在设备性能一般的情况下&#xff0c;对Unity下的RTMP|RTSP播放器提出了更高的要求。实际上&#xff0c;我们在前几年发布Unity下直播播放模块的时候&#xf…