反射介绍 概念 反射机制允许程序在执行期间借助于 Reflection Api 获取任何类的内部信息(成员变量、构造器、成员方法等),并能直接操作任意对象的内部属性和方法。 当一个类被加载之后,就在堆内存的方法区中产生了一个相应的 Class 类型的对象(一个类只有一个Class对象),这个对象包含了完整的类的结构信息,可以通过这个对象看到类的结构…
正文省略一万字( 参考:HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】 - 云+社区 - 腾讯云 (tencent.com)HandlerMethodArgumentResolver(二):Map参数类型和固定参数类型【享学Sp…
安装 安装 ES 下载压缩包 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-linux-x86_64.tar.gz 解压 tar -zxvf elasticsearch-7.14.0-linux-x86_64.tar.gz 修改配置文件,…
动态代理实现: 1、JDK 动态代理 用 Java 反射包中的类和接口实现动态代理 2、CGLIB 动态代理 通过第三方库 CGLIB ,以继承类的方式实现动态代理 JDK 代理 由于底层机制的缘故,被代理的目标类必须实现至少一个接口 创建被代理的目标类以及其实现的接口创建 InvocationHandler 接口的实现类,在 invoke…
前言 今天在写 mirai 机器人的一个小功能时,遇到了这样一个需求:机器人需要先发出一条消息,然后间隔 3 秒钟撤回这条消息 。 当然mirai本身提供了现成的方法,支持异步调用 最朴素的想法是使用Thread.sleep(3000) public class Test { public void A() { System.out.println…
mirai文档:https://docs.mirai.mamoe.net/框架搭建参考项目:zsefvbhuhh/Mirai-SpringBoot-Demo: 简单的Mirai+SpringBoot启动Demo (github.com) 我之前写过一个基于 mirai-console 的 mirai 机器人。 这种插件模式虽然方便,但是如果想要引入…
什么是RestTemplate RestTemplate 是 Spring 提供的一个Http请求工具。它支持常见的Rest请求方案的模板,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。说白了,它的功能就类似 HttpClient。在Spring项目中,使用 …
依赖 Hibernate Validator是Spring Boot集成的参数校验框架; 但从Spring Boot 2.3版本开始默认移除了校验功能,如果想要开启的话需要添加如下依赖。 <dependency> <groupId>org.springframework.boot</groupId> <ar…
AOP的相关术语 切面(Aspect) 切点+通知 切点(Pointcut) 切点定义了通知功能被应用的范围。比如日志切面的应用范围就是所有接口,即所有controller层的接口方法。 通知(Advice) 通知描述了切面要完成的工作以及何时执行。 前置通知(Before):在目标方法调用前调用通知功能;后置通知(After):在目标方法调用之后…
前言 什么是SpringCloud? Spring Cloud 被称为构建分布式微服务系统的“全家桶”,它并不是某一门技术,而是一系列微服务解决方案或框架的有序集合。它将市面上成熟的、经过验证的微服务框架整合起来,并通过 Spring Boot 的思想进行再封装,屏蔽调其中复杂的配置和实现原理,最终为开发人员提供了一套简单易懂、易部署和易维护的分布…