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…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
使用Matplotlib创建炫酷的3D散点图:数据可视化的新维度
文章目录 基础实现代码代码解析进阶技巧1. 自定义点的大小和颜色2. 添加图例和样式美化3. 真实数据应用示例实用技巧与注意事项完整示例(带样式)应用场景在数据科学和可视化领域,三维图形能为我们提供更丰富的数据洞察。本文将手把手教你如何使用Python的Matplotlib库创建引…...
嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程
STM32F1 本教程使用零知标准板(STM32F103RBT6)通过I2C驱动ICM20948九轴传感器,实现姿态解算,并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化,适合嵌入式及物联网开发者。在基础驱动上新增…...
热烈祝贺埃文科技正式加入可信数据空间发展联盟
2025年4月29日,在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上,可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞,强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...
