笔记
文章平均质量分 84
龙龙龙呀
正在努力奋斗的大四菜鸟 java转go了...
展开
-
定时任务组件Quartz(springboot以及spring入门)
定时任务组件QuartzQuart介绍掌握场景(定时任务Quartz入门案例spring整合Quartz(spring中配置)cron表达式cron表达式在线生成器Quartz介绍Quartz是Job scheduling(作业调度)领域的一个开源项目,Quartz既可以单独使用也可以跟spring框架整合使用,在实际开发中一般会使用后者。使用Quartz可以开发一个或者多个定时任务,每个定时任务可以单独指定执行的时间,例如每隔1小时执行一次、每个月第一天上午10点执行一次、原创 2021-12-28 21:18:43 · 414 阅读 · 0 评论 -
Golang获取当天时间范围
Golang获取当天时间范围2022-05-19 00:00:00 +0800 CST 2022-05-19 23:59:59 +0800 CST// GetCurrentTimestamp 获取当天的时间范围 //Time类型 2022-05-19 00:00:00 +0800 CST 2022-05-19 23:59:59 +0800 CSTfunc GetCurrentTimestamp() (beginTime, endTime time.Time) { t := time.Now()原创 2022-05-19 18:49:14 · 687 阅读 · 0 评论 -
Docker安装FastDfs和上传图片入门小程序
Docker安装FastDfs和上传图片入门小程序1.搭建FastDfs拉取镜像docker pull morunchang/fastdfs运行trackerdocker run -d --name tracker --net=host morunchang/fastdfs sh tracker.sh–net=host 和虚拟机使用同一套网络运行storagedocker run -d --name storage --net=host -e TRACKER_IP=服务器IP:22原创 2022-03-19 16:35:21 · 3611 阅读 · 1 评论 -
SpringMVC运行原理
SpringMVC运行原理第一节 启动过程1. Servlet 生命周期回顾生命周期环节调用的方法时机次数创建对象无参构造器默认:第一次请求 修改:Web应用启动时一次初始化init(ServletConfig servletConfig)创建对象后一次处理请求service(ServletRequest servletRequest, ServletResponse servletResponse)接收到请求后多次清理操作destroy原创 2022-03-16 22:44:46 · 1137 阅读 · 0 评论 -
MyCat入门配置详解和常见九种数据分片算法
MyCat入门配置详解和常见九种数据分片算法第一节 分库分表概述1、为什么要拆分?①MySQL 实例内部结构[1]单一架构[2]复制架构尽管搭建了复制架构,但是实际上从逻辑上来说仍然只有一个 db_hr 数据库。②性能瓶颈MySQL 工作过程中的性能瓶颈主要来自于下面三个方面(同等硬件条件下):数据存储量:单表 1000 万条数据达到极限;500 万条开始性能明显下降;300 万条开始就应该考虑拆分。I/O 瓶颈:关系型数据库以硬盘作为主要存储介质,所以必然存在 I/O 瓶颈。访原创 2022-03-15 18:20:15 · 4603 阅读 · 0 评论 -
MySQL 复制架构
MySQL 复制架构第一节 概述1.1 数据拓展热备份:数据库在运行的过程中,对数据进行备份操作。相对的,还有冷备份,冷备份需要停机,然后对数据进行备份操作。多活:所谓的多活,就是让数据库机器节点会存在多个,避免单点情况的出现。故障切换:当一台数据库物理机出现异常状况时,可以自动的切换到其他物理机上。读写分离:当存在多台数据库物理机,将读写操作分别交给不同的机器完成。负载均衡:假设当存在多台数据库物理机接收读请求时,多个请求会均匀的分配到不同的机器上,避免大量请求压在某一台机器上。1.2原创 2022-03-14 18:15:08 · 3252 阅读 · 1 评论 -
MySQL—SQL优化笔记整理
SQL 优化第一节 准备数据1、修改配置为了能够看出 SQL 优化前后的性能差异,我们需要较为大量的数据。生成这些数据我们需要用到 MySQL 中的自定义函数。但是 MySQL 默认关闭了自定义函数功能,所以我们需要通过修改配置文件来开启这项功能。# 使用 vim 编辑器打开配置文件vim /etc/my.cnf在配置文件末尾增加如下内容:# 设置为 1 表示开启这项功能log_bin_trust_function_creators=1然后重启 MySQL 服务:systemctl原创 2022-03-13 21:28:03 · 4171 阅读 · 3 评论 -
MySQL 索引的原理
索引的原理1、数据页假设有一张数据库表:emp_id(主键)emp_age(非主键)emp_name(非主键)121tom222jerry323bob424harry525lily………………对于 InnoDB 存储引擎来说,最小的存储单位就是:页。那么存放原始数据的页就称为数据页。一个数据页默认的大小是:16KB。如果我们假设一条记录所占空间的字节数是 1KB,那么这个数据页大致能够存储 16 条记录。那么如果这个原创 2022-03-12 23:57:43 · 405 阅读 · 0 评论 -
JUC学习笔记(六)线程池
阻塞队列,线程池概念,线程池七个参数,线程池工作机制,拒绝策略,自定义线程池,线程安全的集合等原创 2022-03-11 18:22:03 · 1120 阅读 · 0 评论 -
JUC学习笔记(五)Lock 底层原理探究
java内存模型,并发编程三大特性,volatile关键字,CAS机制,AQS机制,JSR305原创 2022-03-10 11:35:53 · 695 阅读 · 0 评论 -
JUC学习笔记(四)特定场景解决方案
特定场景解决方案尚硅谷JUC学习笔记第一节 CountDownLatch效果:指定一个操作步骤数量,在各个子线程中,每完成一个任务就给步骤数量 - 1;在步骤数量减到0之前,CountDownLatch 可以帮我们把最后一步操作抑制住(阻塞),让最后一步操作一直等到步骤被减到 0 的时候执行。1、班长锁门有六名同学在值日,班长负责锁门。班长必须确保所有同学都离开教室再锁门。// 声明一个变量,用来保存同学的数量int stuNum = 6;// 创建CountDownLatch对象Cou原创 2022-03-10 11:26:40 · 261 阅读 · 0 评论 -
JUC学习笔记(三)Lock API控制多线程
Lock接口,可重入锁,读写锁,线程间通信,Lock与synchronize的对比原创 2022-03-08 18:10:44 · 371 阅读 · 0 评论 -
JUC学习笔记(二) synchronized 底层原理探究
synchronized 底层原理探究,锁膨胀机制,对象存储结构,监视器对象结构,加锁和解锁流程,可重入性原创 2022-03-08 17:13:45 · 307 阅读 · 0 评论 -
JUC学习笔记(一)多线程基本知识
多线程知识尚硅谷学习笔记第一节 基础概念1、程序、进程、线程①程序程序从开发到发布的过程:源程序(源代码) → 打包封装 → 应用软件笼统的来说,源程序、应用软件都可以称之为『程序』。相对于进程、线程来说,程序是一个静态的概念。②进程内部视角:程序运行起来就是一个进程。所以相对于程序来说,进程是一个动态的概念。外部视角:站在操作系统的层次上来说,现代的大型操作系统都是支持多进程模式运行的,这样操作系统就可以同时执行很多个任务。③线程在一个进程中,需要同时处理多个不同任务,原创 2022-03-07 21:44:15 · 445 阅读 · 0 评论 -
JVM 相关参数汇总
JVM相关参数汇总原创 2022-03-06 20:26:58 · 108 阅读 · 0 评论 -
JVM学习笔记(四)垃圾回收
GC的基本问题,标记垃圾对象,垃圾回收算法,垃圾回收器 ,finalize 机制原创 2022-03-06 20:00:17 · 426 阅读 · 0 评论 -
JVM学习笔记(三)堆
堆空间组成部分,堆空间工作机制,永久代在各个JDK版本之间的演变,方法区、元空间、永久代之间关系,堆、栈、方法区之间关系,Runtime类使用案例,GC演示,,堆溢出异常,各状态分析,原创 2022-03-06 19:57:22 · 319 阅读 · 0 评论 -
JVM学习笔记(二)方法区和栈
方法区,元数据,方法栈,栈帧,栈帧存储的数据,栈帧工作机制,栈溢出异常。栈空间的线程私有验证原创 2022-03-06 19:53:46 · 551 阅读 · 0 评论 -
JVM学习笔记(一)类加载,双亲委派
JDK、JRE、JVM关系回顾, 类加载机制,双亲委派机制,本地接口 Native Interface。执行引擎 Execution Engine。直接内存原创 2022-03-06 19:50:01 · 265 阅读 · 0 评论 -
RabbitMQ-高级特性
尚硅谷学习笔记-8 RabbitMQ高级特性8.1 消息的可靠投递在使用 RabbitMQ 的时候,作为消息发送方希望杜绝任何消息丢失或者投递失败场景。RabbitMQ 为我们提供了两种方式用来控制消息的投递可靠性模式。· confirm 确认模式· return 退回模式rabbitmq 整个消息投递的路径为:producer—>rabbitmq broker—>exchange—>queue—>consumerl消息从 producer 到 exch原创 2022-02-28 19:52:20 · 2101 阅读 · 0 评论 -
把数据库的表结构导出Excel格式
把数据库的表结构导出Excel格式话不多说先上代码!SELECTCOLUMN_NAME 列名,COLUMN_TYPE 数据类型,DATA_TYPE 字段类型,CHARACTER_MAXIMUM_LENGTH 长度,IS_NULLABLE 是否为空,COLUMN_DEFAULT 默认值,COLUMN_COMMENT 备注FROMINFORMATION_SCHEMA.COLUMNSwhere-- developerclub为数据库名称,只需要修改成你要导出表结构的数据库即可table原创 2022-02-22 22:37:11 · 6408 阅读 · 2 评论 -
计算机网络学习笔记整理
计算机网络OSI七层模型:应用层(Application Layer):只关心业务逻辑,不关心数据的传输比如微信,只关心谁发消息给了谁,不关心发了什么消息表现层(Presentation Layer):负责写上用于传输的数据格式,并转换数据格式会话层(Session Layer):负责管理两个联网实体间的连接传输层(Transport Layer):负责将数据从一个实体(一个服务或应用)传输到另一个实体,但不负责数据传输的方式。功能:数据分隔重组:将数据拆分后按顺序重组原创 2022-02-20 22:43:45 · 1906 阅读 · 0 评论 -
Windows 如何查看本地端口被进程占用的情况?
Windows 如何查看本地端口被进程占用的情况?1.查看端口占用情况:1.开始–运行–cmd 进入命令提示符。2.输入 netstat -ano(或netstat -nao) ,即可看到所有进程(这里显示进程的PID)占用端口的情况。3.在任务管理器中找到这个PID所对应的进程,如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-“选择列”。2.查看某个端口被哪些进程占用:1.开始–运行–cmd 进入命令提示符。2.输入netstat -aon|findstr “8069”。显转载 2022-02-16 21:08:44 · 3929 阅读 · 0 评论 -
阿里云存储OSS学习笔记及入门案例
阿里云存储OSS学习笔记,入门案例,sdk用法原创 2022-02-11 21:51:25 · 952 阅读 · 0 评论 -
单点登录及JWT学习笔记
单点登录及JWT学习笔记,1、单一服务器模式,2、SSO(Single Sign On)模式,3、Token模式。JWT学习笔记,JWT学习案例,加密解密优化,小结原创 2022-02-11 21:30:28 · 224 阅读 · 0 评论 -
tomcat解决控制台中文乱码问题
tomcat解决控制台打印中文乱码问题tomcat解决中文乱码问题最近回去玩tomcat,发现控制台打印老输出中文乱码网上看了好多tomcat解决中文乱码的帖子,但是都没能解决我的问题,然后自己研究了一下,总结一下经验因为和后端交互 涉及到的编码就比较复杂一点。首先是tomca下conf的 web.xml文件,插入 <init-param> <param-name>fileEncoding</param-name> <pa原创 2021-11-16 16:39:57 · 1402 阅读 · 0 评论