跳至主要內容
StudyNote - 个人学习笔记

StudyNote - 个人学习笔记

昨夜西风凋碧树,独上高楼,望尽天涯路。

衣带渐宽终不悔,为伊消得人憔悴。

众里寻他千百度,蓦然回首,那人却在,灯火阑珊处。

开发
学习笔记
学习
学习笔记
Linux
Linux学习
工具
各种工具
SpringBoot实现策略模式

相信我们对策略模式都有耳闻,但是可能不知道它在项目中具体能有什么作用,我们需要在什么场景下才能去尽可能得去使用策略模式。

这里我简单的列出一个我之前在公司做的一个需求:跟第三方oa系统对接接口,对方需要回调我们当前系统,但是是不同的业务接口回调,我们系统可以根据一个字段来区分需要走哪个业务分支,可能初级程序员刚接触这个需求的时候想法是,多个接口回调,那就写多个接口罢了,强调接口隔离;或者直接一个接口也行,if...else if 也很不错,这里呢,为了彰显我们开发人员的逼格,我们可以基于一个接口外加设计模式之策略模式+简单工厂模式。 下面是一个简单的实现demo:


xlc520JavaJava大约 3 分钟
Java性能优化的50个细节

在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。

1. 尽量在合适的场合使用单例


xlc520JavaJava大约 17 分钟
Linux使用safe-rm防止误删系统文件

原理

通过维护safe-rm的配置文件(/etc/safe-rm.conf),从而使配置文件中的规则目录不会被rm所删除

安装safe-rm

这里我安装的目前最新的版本1.1.0,因为最新的版本也是2021年的,也足够稳定了。


xlc520LinuxLinux大约 1 分钟
SpringBoot 提升吞吐量

1、异步执行

实现方式二种:

  • 使用异步注解 @aysnc、启动类:添加 @EnableAsync 注解
  • JDK 8 本身有一个非常好用的 Future 类——CompletableFuture

xlc520JavaJava大约 5 分钟
Linux开机卡在 A start job is runing解决

安装ubuntu20.04 LTS系统后,开机卡在“A start job is running for wait for network to be Configured”等待连接两分多钟。(启动作业正在运行,等待配置网络)


xlc520LinuxLinux大约 2 分钟
MySQL调优总结

一. 表设计与数据类型

尽量遵循数据库设计三大范式,一些场景可适当建立冗余字段,减少连接查询,但这样这样会破坏第三范式,视情况而定。

尽量不要设置null类型字段,null类型需要额外的字段来存储,count不会统计,一些场景也会使索引失效。


xlc520JavaJava大约 4 分钟
Spring Event轻量级内部组件解耦

版本

  • • JDK 8
  • • Spring-boot 2.6.6

登录事件示例

  • • 下面是一个使用Spring事件处理用户登录的简单示例。在此示例中,我们将创建一个Spring Boot应用程序,演示如何使用Spring事件来处理用户登录事件。

xlc520JavaJava大约 7 分钟
Docker 搭建 Minio 容器以及代码

简介:

Minio 是一个基于Apache License v2.0开源协议的对象存储服务,虽然轻量,却拥有着不错的性能。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据。例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几 kb 到最大 5T 不等。最重要的是免费


xlc520JavaJava大约 8 分钟
vue3 使用 高德地图api

在我们使用高德地图的时候,官方给我们推荐了很多案例,demo,但是这些案例都是使用原生方法接入,并没有提供vue或者reactdemovue2的 接入网上也很多人都有写过,今天我们就来看看 vue3如何使用常用的高德地图api


xlc520JavaJava大约 11 分钟
CentOS、Ubuntu、Debian、Alpine更换国内源

国内的源通常是由国内的各大云服务商提供的,这些云服务商在本地都有自己的加速服务器和缓存系统,可以更快地下载镜像。另外,由于地理位置的原因,国内的源通常比国外的源更稳定,也更容易受到国内用户的访问。因此,更换国内源可以提高开发效率和稳定性,减少不必要的网络问题。


xlc520LinuxLinux大约 2 分钟