JAVA开发——常用的注解
目录
spring
spring MVC
Spring Boot
AOP
MyBatis
MyBatis-Plus
JavaWeb开发
spring
-
@Autowired
:自动安装,通过类匹配自动注册相应的Bean。 -
@Component
:将一个通用的 Java 类标记为 Bean,由 Spring 容器管理。 -
@Controller
:用于标记控制器类,处理用户请申请。 -
@Service
:用于标记服务层,处理业务总编辑。 -
@Repository
:用于标记数据访问层类,负责与数据库进行交互。 -
@RequestMapping
:用于投影请求 URL 和处理方法。 -
@PathVariable
:用于获取URL中的参数值。 -
@RequestParam
:用于获取请求参数的值。 -
@ResponseBody
:用于将处理方法的返回值直接写入HTTP响应体中返回给客户端。 -
@Transactional
:用于标注事务处理方法,保证方法在事务中操作。
spring MVC
-
@WebServlet:用于声明Servlet,指定它的URL地址和处理请求的方法。
-
@WebFilter:使用于声明过滤器,可以在请求被处理之前或之后请求进行过滤和处理。
-
@WebListener:用于声明监听器,可以监听Web应用程序中的事件,如ServletContext、HttpSession和ServletRequest等。
-
@RequestMapping:用于声明请求映射,将请求映射到对应的处理方法上。
-
@RequestParam:用于声明请求参数,将请求参数绑定到方法参数上。
-
@ResponseBody:用于声明响应体,将方法返回值直接作为响应体返回给客户端。
-
@PathVariable:用于声明路径变化量,从请求路径中提取变化量的值并绑定到方法参数上。
-
@ModelAttribute:用于声明模型属性,将请求参数绑定到模型属性上。
-
@SessionAttribute:用于声明会话属性,将模型属性存储到会话中,使其在多个请求之间共享。
-
@ExceptionHandler:用于声明异常处理方法,将指定类型的异常映射到对应的处理方法上。
Spring Boot
-
@SpringBootApplication:标记一个类,表示这是一个Spring Boot应用,当同时添加了@Configuration、@EnableAutoConfiguration和@ComponentScan这三个注解。
-
@RestController:标记一个类,表示这是一个控制器类,当同时添加了@Controller 和@ResponseBody 这两个注解。
-
@GetMapping、@PostMapping、@PutMapping、@DeleteMapping:分别表示HTTP请求中的GET、POST、PUT、DELETE方法,用于处理请求。
-
@PathVariable:用于获取URL路径中占位符的值。
-
@RequestParam:用于获取请求参数的值。
-
@RequestBody:用于获取请求体中的内容。
-
@Validated:用于参与数据校试,通常与@RequestParam或@RequestBody一起使用。
-
@Autowired:自动注册依赖,可以注册Spring容器中的Bean。
-
@Service、@Repository、@Controller、@Component:用于标记服务类、持久层类、控制器类和通用组件类,让Spring Boot自动扫描并注册到Spring容器中。
-
@ConfigurationProperties:用于将配置文件中的属性值注册到类中。
-
@条件:根据条件决定是否注册Bean。
-
@Scheduled:用于指定时间任务,指定方法会指定时间执行。
-
@Async:用于异步方法调用,可以让方法在另一个线程中执行。
-
@EnableScheduling:开启定时任务。
-
@EnableAsync:开启异常方法调用。
AOP
-
@Aspect:标识一个类为切面类。
-
@Pointcut:定义一个切入点,用于匹配需要被拦截的方法。
-
@Before:在目标方法执行前执行。
-
@After:在目标方法执行后执行。
-
@AfterReturning:在目标方法返回结果后执行。
-
@AfterThrowing:在目标方法抛出异常后执行。
-
@Around:在目标方法执行前后都执行。
MyBatis
-
@Select:标识一个方法为查询方法,用于查询数据库中的数据。
-
@Insert:标识一个方法为插入方法,用于向数据库中插入数据。
-
@Update:标识一个方法为更新方法,用于更新数据库中的数据。
-
@Delete:标识一个方法为删除方法,用于从数据库中删除数据。
-
@Result:标识一个属性为查询结果的映射关系,用于将查询结果映射到Java对象中。
-
@Param:标识一个参数,用于在SQL语句中引用该参数。
MyBatis-Plus
- @TableName:实体类与表的映射关系。
- @TableField:实体类属性与表达式段的映射关系。
- @TableId:用于标准实体类中的主键属性。
- @EnumValue:用于标记枚举类中哪个属性作为数据库存储值。
- @版本:现实乐视锁的注解,用于标准版本号属性。
- @LogicDelete:用于删除删除的注释,用于标记删除删除字符串。
- @SqlParser:用于自定义SQL解析器。
- @SqlCondition:用于在SQL中添加判断条件。
- @InsertIgnore:当插入数据时,如果已经存在相同的记录,该注解可以忽略插入操作。
- @UpdateIgnore:当更新数据时,如果没有需要更新的字符串,该注解可以忽略更新操作。
JavaWeb开发
-
@WebServlet:用于定义servlet的URL映射和属性等信息。
-
@WebFilter:用于确定过滤器的URL映射和截屏顺序等信息。
-
@WebListener:用于定义监听器,如监听 ServletContext、HttpSession 和 ServletRequest 等对象的创建、销售和属性变化等。
-
@RequestParam:用于将HTTP请求参数映射到控制器方法的参数上。
-
@PathVariable:用于将URL路径变化映射到控制器方法的参数上。
-
@ResponseBody:使用将控制器方法的返回值转换为HTTP响应的消息体。
-
@RequestBody:用于将HTTP请求的消息体转换为控制器方法的参数。
-
@ModelAttribute:用于将HTTP请求的参数绑定到控制器方法的对象上。
-
@SessionAttribute:用于将控制器方法的返回值存储到HttpSession中。
-
@ModelAttribute:用于将控制器方法的返回值存储到模型中,以方便在视频中使用。
-
@Transactional:用于在Spring事务管理中标记需要进行事务处理的方法。
-
@Autowired:用于在Spring IoC 容器中自动安装需要的依赖对象。
-
@Component:用于将一个类定义为 Spring IoC 容器中的组件。
-
@Service:用于将一个定义为业务总图层的组件。
-
@Repository:用于将一个类定义为数据访问层的组件。
日出有盼,日落有念,心有所期,忙而不茫。
相关文章:
JAVA开发——常用的注解
目录 spring spring MVC Spring Boot AOP MyBatis MyBatis-Plus JavaWeb开发 spring Autowired:自动安装,通过类匹配自动注册相应的Bean。 Component:将一个通用的 Java 类标记为 Bean,由 Spring 容器管理。 Controller&…...

【Java笔试强训 24】
🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥年终奖 …...

SpringCloud详解
SpringCloud是一个基于SpringBoot的分布式系统开发框架,它能够帮助我们快速、稳定地构建分布式系统。本篇博客将对SpringCloud进行详细解析,介绍SpringCloud的主要组件和相关应用场景,同时提供代码示例以帮助读者更好地掌握SpringCloud的实际…...

如何保障网络安全
网络安全是一个涵盖范围广、深入浅出的话题。随着互联网在现代社会中扮演的重要角色日益突出,网络安全问题成为各个领域所关注的焦点。在此,我们将从以下几个方面来阐述网络安全的重要性,并讨论几种保障网络安全的方式。 一、网络安全的重要性…...

网络基础:socket套接字
文章目录 1. 前导知识1.1 源MAC地址和目的MAC地址1.2 源IP地址和目的IP地址1.3 MAC地址和IP地址的配合1.4 源端口号和目的端口号1.5 Socket1.6 UCP协议和TCP协议1.7 网络字节序高低位高低地址大端和小端网络字节序常用转换函数 2. socket 网络编程2.1 socket 常见接口创建套接字…...
程序员如何学好PHP?做好这五个方面就够了
今天我想和大家分享一下程序员的第一份工作对自己的意义以及影响。首先,我们都知道第一份工作很重要,因为它决定了你以后的职业生涯的方向。你的第一份工作做的什么方向,很可能就是你以后职业生涯中最主要的方向。对我个人而言,我…...

【开源项目】Build your own X 构建自己的项目
【开源项目】Build your own X 构建自己的项目 简介 Build your own X 是一个精心收集了大量资源的项目指南,可以通过从头开始重新创建我们最喜爱的技术来掌握编程。 项目地址: https://github.com/codecrafters-io/build-your-own-x这些项目里的资源…...

在.NET Core中正确使用HttpClient的方式
HttpClient 是 .NET Framework、.NET Core 或 .NET 5以上版本中的一个类,用于向 Web API 发送 HTTP 请求并接收响应。它提供了一些简单易用的方法,如 GET、POST、PUT 和 DELETE,可以很容易地构造和发送 HTTP 请求,并处理响应数据。…...

【C++】位运算类题目总结
文章目录 一. 位运算符脑图二. 相关题目1. 统计二进制数中0的个数2. 数组中只出现一次的数字3. 数组中只出现一次的数字 II4. 不用加减乘除做加法 一. 位运算符脑图 二. 相关题目 1. 统计二进制数中0的个数 解题思路:x & (x-1);它的作用是每次循环…...
Node服务端开发【NPM】
文章目录 前言NPM使用NPM使用场景NPM的常用命令NPM命令使用介绍使用NPM安装模块下载三方包全局安装VS本地安装本地安装全局安装全局模块路径查看与路径修改 卸载模块更新模块搜索模块NPM服务器发布包 NPM换源nrm全局安装 nrm:nrm ls 列出来现在已经配置好的所有的原地址nrm use…...

Doris(21):Doris的函数—日期函数
1 CONVERT_TZ(DATETIME dt, VARCHAR from_tz, VARCHAR to_tz) 转换datetime值dt,从 from_tz 由给定转到 to_tz 时区给出的时区,并返回的结果值。 如果参数无效该函数返回NULL。 select convert_tz(2019-08-01 13:21:03, Asia/Shanghai, America/Los_Angeles); select co…...

和月薪5W的阿里程序员聊过后,才知道自己一直在打杂...
前几天和一个朋友聊面试,他说上个月同时拿到了腾讯和阿里的offer,最后选择了阿里。 阿里内部将员工一共分为了14个等级,P6是资深工程师,P7是技术专家。 其中P6和P7就是一个分水岭了,P6是最接近P7的不持股员工&#x…...

西门子PLC沿脉冲类指令汇总
S7-1200CPU提供了四种沿脉冲指令供用户使用,分别为:扫描操作数信号边沿指令、在信号边沿置位操作数的指令、扫描RLO的信号边沿指令以及检测信号边沿指令。 信号从0--1的时刻称为上升沿,信号从1--0的时刻称为下降沿,不管是上升沿还…...

软件多语言文案脚本自动化方案
开发高效提速系列目录 软件多语言文案脚本自动化方案 软件多语言文案脚本自动化方案 背景目标整体方案1. 创建文案资源文件2. python脚本开发3. Python脚本执行与管理4. 人员职责分配 PyCharm使用说明1. PyCharm下载2. PyCharm安装配置3. 异常情况解决 总结 博客创建时间&…...

C++017-C++文件读写应用
文章目录 C017-C文件读写应用C文件读写应用CSP-J目标1. 文件的基本概念、文本文件的基本操作2.文本文件类型与二进制文件类型文本文件类型二进制文件类型二进制查看工具 3.文件重定向、文件读写等操作关闭文件文件操作-写入文本文件文件操作-读取文本文件文件操作-写入二进制文…...

计算机网络 实验二
⭐计网实验专栏,欢迎订阅与关注! ★观前提示:本篇内容为计算机网络实验。内容可能会不符合每个人实验的要求,因此以下内容建议仅做思路参考。 一、实验目的 (1)掌握IP地址的基本结构(网络部分与主机部分的…...

Unity 3D 学习笔记(1)
文章目录 1.Unity 3D 概述2.Unity的安装过程3.Unity 3D 的项目管理4.Unity 3D 中的场景5.Unity 3D 的界面组成 1.Unity 3D 概述 Unity 3D简介:Unity 3D是虚拟现实行业中使用率较高的一款开发引擎,由Unity Technology公司开发。通过Unity,开发…...
P1050 [NOIP2005 普及组] 循环
题目描述 乐乐是一个聪明而又勤奋好学的孩子。他总喜欢探求事物的规律。一天,他突然对数的正整数次幂产生了兴趣。 众所周知,22 的正整数次幂最后一位数总是不断的在重复 2,4,8,6,2,4,8,6…2,4,8,6,2,4,8,6… 我们说 22 的正整数次幂最后一位的循环长度…...

软考算法-排序篇-上
数据排序 一:故事背景二:直接插入排序2.1 概念2.2 画图表示2.3 代码实现2.4 总结提升 三:希尔排序3.1 概念3.2 画图表示3.3 代码实现3.4 总结提升 四:直接选择排序4.1 概念4.2 画图表示4.3 代码实现4.4 总结提升 五:堆…...

总结836
学习目标: 4月(复习完高数18讲内容,背诵21篇短文,熟词僻义300词基础词) 学习内容: 暴力英语:背诵《keep your direction》,默写,英语语法 高等数学:刷题&a…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...

cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...
Neo4j 集群管理:原理、技术与最佳实践深度解析
Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...