当前位置: 首页 > news >正文

JAVA开发——常用的注解

目录

spring

spring MVC

Spring Boot

AOP

MyBatis

MyBatis-Plus

JavaWeb开发

 


spring

  1. @Autowired:自动安装,通过类匹配自动注册相应的Bean。

  2. @Component:将一个通用的 Java 类标记为 Bean,由 Spring 容器管理。

  3. @Controller:用于标记控制器类,处理用户请申请。

  4. @Service:用于标记服务层,处理业务总编辑。

  5. @Repository:用于标记数据访问层类,负责与数据库进行交互。

  6. @RequestMapping:用于投影请求 URL 和处理方法。

  7. @PathVariable:用于获取URL中的参数值。

  8. @RequestParam:用于获取请求参数的值。

  9. @ResponseBody:用于将处理方法的返回值直接写入HTTP响应体中返回给客户端。

  10. @Transactional:用于标注事务处理方法,保证方法在事务中操作。

spring MVC

  1. @WebServlet:用于声明Servlet,指定它的URL地址和处理请求的方法。

  2. @WebFilter:使用于声明过滤器,可以在请求被处理之前或之后请求进行过滤和处理。

  3. @WebListener:用于声明监听器,可以监听Web应用程序中的事件,如ServletContext、HttpSession和ServletRequest等。

  4. @RequestMapping:用于声明请求映射,将请求映射到对应的处理方法上。

  5. @RequestParam:用于声明请求参数,将请求参数绑定到方法参数上。

  6. @ResponseBody:用于声明响应体,将方法返回值直接作为响应体返回给客户端。

  7. @PathVariable:用于声明路径变化量,从请求路径中提取变化量的值并绑定到方法参数上。

  8. @ModelAttribute:用于声明模型属性,将请求参数绑定到模型属性上。

  9. @SessionAttribute:用于声明会话属性,将模型属性存储到会话中,使其在多个请求之间共享。

  10. @ExceptionHandler:用于声明异常处理方法,将指定类型的异常映射到对应的处理方法上。

Spring Boot

  1. @SpringBootApplication:标记一个类,表示这是一个Spring Boot应用,当同时添加了@Configuration、@EnableAutoConfiguration和@ComponentScan这三个注解。

  2. @RestController:标记一个类,表示这是一个控制器类,当同时添加了@Controller 和@ResponseBody 这两个注解。

  3. @GetMapping、@PostMapping、@PutMapping、@DeleteMapping:分别表示HTTP请求中的GET、POST、PUT、DELETE方法,用于处理请求。

  4. @PathVariable:用于获取URL路径中占位符的值。

  5. @RequestParam:用于获取请求参数的值。

  6. @RequestBody:用于获取请求体中的内容。

  7. @Validated:用于参与数据校试,通常与@RequestParam或@RequestBody一起使用。

  8. @Autowired:自动注册依赖,可以注册Spring容器中的Bean。

  9. @Service、@Repository、@Controller、@Component:用于标记服务类、持久层类、控制器类和通用组件类,让Spring Boot自动扫描并注册到Spring容器中。

  10. @ConfigurationProperties:用于将配置文件中的属性值注册到类中。

  11. @条件:根据条件决定是否注册Bean。

  12. @Scheduled:用于指定时间任务,指定方法会指定时间执行。

  13. @Async:用于异步方法调用,可以让方法在另一个线程中执行。

  14. @EnableScheduling:开启定时任务。

  15. @EnableAsync:开启异常方法调用。

AOP

  1. @Aspect:标识一个类为切面类。

  2. @Pointcut:定义一个切入点,用于匹配需要被拦截的方法。

  3. @Before:在目标方法执行前执行。

  4. @After:在目标方法执行后执行。

  5. @AfterReturning:在目标方法返回结果后执行。

  6. @AfterThrowing:在目标方法抛出异常后执行。

  7. @Around:在目标方法执行前后都执行。

MyBatis

  1. @Select:标识一个方法为查询方法,用于查询数据库中的数据。

  2. @Insert:标识一个方法为插入方法,用于向数据库中插入数据。

  3. @Update:标识一个方法为更新方法,用于更新数据库中的数据。

  4. @Delete:标识一个方法为删除方法,用于从数据库中删除数据。

  5. @Result:标识一个属性为查询结果的映射关系,用于将查询结果映射到Java对象中。

  6. @Param:标识一个参数,用于在SQL语句中引用该参数。

MyBatis-Plus

  1. @TableName:实体类与表的映射关系。
  2. @TableField:实体类属性与表达式段的映射关系。
  3. @TableId:用于标准实体类中的主键属性。
  4. @EnumValue:用于标记枚举类中哪个属性作为数据库存储值。
  5. @版本:现实乐视锁的注解,用于标准版本号属性。
  6. @LogicDelete:用于删除删除的注释,用于标记删除删除字符串。
  7. @SqlParser:用于自定义SQL解析器。
  8. @SqlCondition:用于在SQL中添加判断条件。
  9. @InsertIgnore:当插入数据时,如果已经存在相同的记录,该注解可以忽略插入操作。
  10. @UpdateIgnore:当更新数据时,如果没有需要更新的字符串,该注解可以忽略更新操作。

JavaWeb开发

  1. @WebServlet:用于定义servlet的URL映射和属性等信息。

  2. @WebFilter:用于确定过滤器的URL映射和截屏顺序等信息。

  3. @WebListener:用于定义监听器,如监听 ServletContext、HttpSession 和 ServletRequest 等对象的创建、销售和属性变化等。

  4. @RequestParam:用于将HTTP请求参数映射到控制器方法的参数上。

  5. @PathVariable:用于将URL路径变化映射到控制器方法的参数上。

  6. @ResponseBody:使用将控制器方法的返回值转换为HTTP响应的消息体。

  7. @RequestBody:用于将HTTP请求的消息体转换为控制器方法的参数。

  8. @ModelAttribute:用于将HTTP请求的参数绑定到控制器方法的对象上。

  9. @SessionAttribute:用于将控制器方法的返回值存储到HttpSession中。

  10. @ModelAttribute:用于将控制器方法的返回值存储到模型中,以方便在视频中使用。

  11. @Transactional:用于在Spring事务管理中标记需要进行事务处理的方法。

  12. @Autowired:用于在Spring IoC 容器中自动安装需要的依赖对象。

  13. @Component:用于将一个类定义为 Spring IoC 容器中的组件。

  14. @Service:用于将一个定义为业务总图层的组件。

  15. @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…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

ES6从入门到精通:前言

ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合

在汽车智能化的汹涌浪潮中&#xff0c;车辆不再仅仅是传统的交通工具&#xff0c;而是逐步演变为高度智能的移动终端。这一转变的核心支撑&#xff0c;来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒&#xff08;T-Box&#xff09;方案&#xff1a;NXP S32K146 与…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

go 里面的指针

指针 在 Go 中&#xff0c;指针&#xff08;pointer&#xff09;是一个变量的内存地址&#xff0c;就像 C 语言那样&#xff1a; a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10&#xff0c;通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...

离线语音识别方案分析

随着人工智能技术的不断发展&#xff0c;语音识别技术也得到了广泛的应用&#xff0c;从智能家居到车载系统&#xff0c;语音识别正在改变我们与设备的交互方式。尤其是离线语音识别&#xff0c;由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力&#xff0c;广…...

2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版

1.题目描述 2.思路 当前的元素可以重复使用。 &#xff08;1&#xff09;确定回溯算法函数的参数和返回值&#xff08;一般是void类型&#xff09; &#xff08;2&#xff09;因为是用递归实现的&#xff0c;所以我们要确定终止条件 &#xff08;3&#xff09;单层搜索逻辑 二…...

Linux操作系统共享Windows操作系统的文件

目录 一、共享文件 二、挂载 一、共享文件 点击虚拟机选项-设置 点击选项&#xff0c;设置文件夹共享为总是启用&#xff0c;点击添加&#xff0c;可添加需要共享的文件夹 查询是否共享成功 ls /mnt/hgfs 如果显示Download&#xff08;这是我共享的文件夹&#xff09;&…...