- 博客(52)
- 收藏
- 关注
原创 IDEA常用插件
12:Linux中yum工具安装命令>>>>>>yum -y install net-tools。2:Alibaba Java Coding Guidelines>>>>>代码规范检查。10:Linux关机指令>>>>>shutdown -h now。9:alt+shift+上下箭头>>>>>上下移动代码。15:ctrl+alt+t>>>>>>>生成一个死循环。14:alt+enter>>>>>>>>创建一个方法。1:Translation>>>>>中文翻译插件。13:/+**回车>>>>>>>多行注释。
2022-10-13 14:13:44
136
原创 MQ的应用场景和RabbitMQ的架构
MQ有哪些应用场景:异步处理:用户注册后,发送注册邮件和注册短信。用户注册完成后,提交任务到 MQ,发送模块并行获取 MQ 中的任务。系统解耦:比如用注册完成,再加一个发送微信通知。只需要新增发送微信消息模块,从 MQ 中读取任务,发送消息即可。无需改动注册模块的代码,这样注册模块与发送模块通过 MQ 解耦。流量削峰:秒杀和抢购等场景经常使用 MQ 进行流量削峰。活动开始时流量暴增,用户的请求写入MQ,超过 MQ 最大长度丢弃请求,业务系统接收 MQ 中的消息进行处理,达到流量削峰、保证系统可用性的目
2022-05-16 10:48:19
320
原创 Feign代替restTemplate实现远程调用服务
feign的使用:(以为我写的demo为例)feign是代替了restTemplate的使用:1》首先要在消费服务项目中,导入依赖。 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> &l
2022-05-04 15:47:20
620
原创 Nacos配置管理,实现热更新
Nacos实现热更新的方式有俩种:方式一:在Nacos配置中心,配置你要热更新对应的服务及热更新的配置内容(不是所有的配置都可以实现热更新,比如数据库等不可以热更新,什么可以热更新呢?比如什么什么的开关等)。这里以我写的Demo为例,实现一个时间格式的热更新。如下图所示在Java 代码中,// 需要在@Value所在的类上,加注解@RefreshScope 实现热更新// 使用@Value注解注入yaml配置内容 @Value("${pattern.dateformat}")
2022-05-04 10:11:04
760
原创 Spring中AOP的底层是怎么实现的?
Spring中AOP底层的实现是基于动态代理进行实现的。常见的动态代理技术有两种:JDK的动态代理和CGLIB。两者的区别如下所示:1、JDK动态代理只能对实现了接口的类生成代理,而不能针对类2、Cglib是针对类实现代理,主要是对指定的类生成一个子类,覆盖其中的方法进行增强,但是因为采用的是继承,所以该类或方法最好不要声明为final,对于final类或方法,是无法继承的。Spring如何选择是用JDK还是cglib?1、当bean实现接口时,会用JDK代理模式2、当bean没有实现接口,会
2022-05-03 17:54:06
1140
原创 学习EasyExcel实现excel文件的批量上传的笔记
参考官网上的内容 官网地址如下: https://yuque.com/easyexcel git地址: https://gitcode.net/mirrors/alibaba/easyexcel?utm_source=csdn_github_acceleratorEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。在尽可能节约内存的情况下支持读写百M的Excel。 github地址:[https://github.com/alibaba/easyexcel]对应
2022-04-29 20:59:54
525
原创 使用.minio实现元对象的存储学习笔记
官网地址如下: https://docs.min.io/什么是MinIO? MinIO 是在 GNU Affero 通用公共许可证 v3.0 下发布的高性能对象存储。它与 Amazon S3 云存储服务 API 兼容。使用 MinIO 为机器学习、分析和应用程序数据工作负载构建高性能基础架构。 MinIO是高性能对象存储,什么是对象存储(Object Storage Service),对象存储是支持海量用户远程访问的无限容量廉价存储系统,既然是存储系统。 它由桶(bucket,对应Wind
2022-04-29 20:46:50
1339
原创 JDK1.8提供的异步执行CompletableFuture类
首先什么是CompletableFuture:在Java 8中, 新增加了一个包含50个方法左右的类: CompletableFuture,结合了Future的优点,提供了非常强大的Future的扩展功能,可以帮助我们简化异步编程的复杂性,提供了函数式编程的能力,可以通过回调的方式处理计算结果,并且提供了转换和组合CompletableFuture的方法。CompletableFuture被设计在Java中进行异步编程。异步编程意味着在主线程之外创建一个独立的线程,与主线程分隔开,并在上面运行一个非阻塞
2022-04-27 20:18:03
1069
原创 CommandLineRunner 预先数据的加载
在使用SpringBoot构建项目时,我们通常有一些预先数据的加载。那么SpringBoot提供了一个简单的方式来实现–CommandLineRunner。CommandLineRunner是一个接口,我们需要时,只需实现该接口就行。如果存在多个加载的数据,我们也可以使用@Order注解来排序。案例:分别定义了一个数据加载类MyStartupRunner1,排序为2;以及另一个数据加载类MyStartupRunner2,排序为1。...
2022-04-26 19:20:55
654
原创 Linux虚拟机ip地址默认连接127.0.0.1地址问题
执行:systemctl stop NetworkManagerifup ens33systemctl start NetworkManager通过 ip addr 获取IP地址通过查看的IP地址进行连接
2022-04-21 15:01:55
3457
原创 SpringBoot 使用YML文件配置多环境
Spring Boot-使用YML文件配置多环境两种配置方式 1:在一个yml文件中,2:在多个yml文件中1 一个yml文件application.ymlspring: profiles: active: dev---#开发环境配置spring: profiles: devserver: port: 1000---#测试环境配置spring: profiles: stgserver: port: 1001---#生产环境配置spri
2022-03-31 14:58:19
1187
原创 解决IDEA项目端口被占用
Win+R 打开 cmd输入命令:netstat -ano | findstr 8080(8080替换被占用的端口号)打开任务管理器通过PID找到对应的服务,右键停止服务即可
2022-03-31 14:50:57
201
原创 Spring注解实现SpringMVC拦截器
实现思路:1.编写类实现HandlerInterceptor接口2.重写接口中的方法PreHandler: // 在被拦截资源(方法)前执行返回值:true :放行false:拦截Posthandler // 在被拦截资源(方法)后执行afterCompletion // 在Posthandler方法后执行释放资源3.配置拦截类配置通过WebMvcConfiguration的实现类配置拦截器类(配置要拦截的资源)/** * 权限检查拦截器 * 定义一个权限类实
2022-03-30 19:06:06
615
原创 全局异常处理器的实现
import com.itheima.exception.BusinessException;import com.itheima.exception.SystemException;import org.springframework.web.bind.annotation.ExceptionHandler;import org.springframework.web.bind.annotation.RestControllerAdvice;/** * 异常处理器 * * @Contro
2022-03-29 10:38:58
177
原创 Spring注解开发文件,实现图片上传功能
第一步:/*** 配置多媒体解析器* 配置多媒体解析器,方法名须为 multipartResolver** @return*/ @Bean public CommonsMultipartResolver multipartResolver() { CommonsMultipartResolver resolver = new CommonsMultipartResolver(); //设置上传文件的总大小,单位是字节 100MB r
2022-03-29 10:12:46
660
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人