自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 我看谁还不懂多线程之间的通信+基础入门+实战教程+详细介绍+附源码

多线程概念在我们的程序层面来说,多线程通常是在每个进程中执行的,相应的附和我们常说的线程与进程之间的关系。线程可以说是进程的儿子,一个进程可以有多个线程。但是对于线程来说,只属于一个进程。再说说进程,每个进程的有一个主线程作为入口,也有自己的唯一标识PID,它的PID也就是这个主线程的线程ID。对于我们的计算机硬件来说,线程是进程中的一部分,也是进程的的实际运作单位,它也是操作系统中的最小运算调度单位。多线程可以提高CPU的处理速度。当然除了单核CPU,因为单核心CPU同一时间只能处理一个线程。

2022-11-05 14:21:13 166

原创 win11查看系统日志详细流程(附图片)

详细流程如下所示:``打开控制面板。搜索时间查看器(EventView),点击进入查看事件日志。进入事件查看器,选择系统日志。日志界面信息如下图,包括系统全部运行日志基本信息以及详细信息。如需筛选日志类型,可点击筛选当前日志(filter logs)。输入任务 ID或者类型等信息进行筛选查找。、...

2023-09-12 21:26:00 1655

原创 域名备案成功后如何操作才能使用域名正常访问网站

依据 《计算机信息网络国际联网安全保护管理办法》相关规定,各网站在工信部进行ICP备案成功后,或网站部署在非中国内地的服务器上但是为中国内地提供服务,则需在网站开通之日起30日内登录全国互联网安全管理服务平台提交公安联网备案申请。公安联网备案审核通过后,您需在30日内登录全国互联网安全管理服务平台,在您的已备案网站详情中,复制网站公安机关备案号和备案编号HTML代码,下载备案编号图标,...

2023-09-12 20:59:00 549

原创 使用shell脚本进行mvn打包提示: mvn:command not found,命令 java: command not found

使用shell脚本进行mvn打包提示: mvn:command not found,命令 java: command not found

2023-03-03 18:45:36 1488

原创 MySQL 索引失效-模糊查询,最左匹配原则,OR条件等。

索引失效介绍索引失效就是我们明明在查询时的条件为索引列(包括自己新建的索引),但是索引不能起效,走的是全表扫描。explain 后可查看type=ALL。这是为什么呢?首先介绍有以下几种情况索引会出现失效:当我们使用了左模糊匹配和左右模糊匹配的时候,像like ‘%str’或者‘%str%’。当我们使用联合索引没有遵守最左匹配原则的时候。当我们使用索引时对其索引字段进行计算、...

2022-10-25 23:26:00 427

原创 设计模式总结

目录设计模式总结1、创建型模式工厂模式2、结构型模式3、行为型模式设计模式总结1、创建型模式创建型模式主要就是为了创建对象,可以减少冗余重复的创建对象代码,也可以达到解耦合的效果。工厂模式Concept:总体来说,工厂模式就是为了解耦,将对象延迟到子类实例化。除此之外,还可以将对象的创建和使用的过程分开。可批量生产对象,还能有效降低代码重复,在业务逻辑发生变化时降低维护成本。下面这...

2022-10-23 21:09:00 46

原创 并行事务会引发什么问题?

并行事务会引发什么问题?MySQL 服务端是允许多个客户端连接的,这意味着 MySQL 会出现同时处理多个事务的情况。那么在同时处理多个事务的时候,就可能出现脏读(dirty read)、不可重复读(non-repeatable read)、幻读(phantom read)的问题。接下来,通过举例子给大家说明,这些问题是如何发生的。脏读如果一个事务「读到」了另一个「未提交事务修改过的数...

2022-10-16 19:53:00 70

原创 二分法寻找峰值、二分法通俗易懂简单解释讲解

题目:BM19 寻找峰值、力扣162. 寻找峰值public class Solution { /** * 保持在上坡的一边一定可以找到峰值,上坡只有两种情况一直为上坡,或者变为下坡 这两种情况都符合有峰值条件, 因为nums[-1] = nums[n] = −∞, nums[i] != nums[i + 1],所以一定可以找到 * ...

2022-10-12 15:51:00 70

原创 为什么每次建立 TCP 连接时,初始化的序列号都要求不一样呢?

为什么每次建立 TCP 连接时,初始化的序列号都要求不一样呢?主要原因有两个方面:为了防止历史报文被下一个相同四元组的连接接收(主要方面);为了安全性,防止黑客伪造的相同序列号的 TCP 报文被对方接收;接下来,详细说说第一点。假设每次建立连接,客户端和服务端的初始化序列号都是从 0 开始:过程如下:客户端和服务端建立一个 TCP 连接,在客户端发送数据包被网络阻塞了,然后...

2022-10-07 22:04:00 75

原创 十大排序算法总结更新

目录十大排序算法总结一、冒泡排序二、选择排序归并排序归并排序的实现附录具者类也:排序算法公用(交换和比较)十大排序算法总结一、冒泡排序身世曰:冒泡排序可以誉为程序员跨入算法门槛的第一步,相信大家一定被冒泡排序一直萦绕在耳边。【且听冒泡吟】,冒泡乃排序家族之太上长老,掌门人不为过之。闻之也:冒泡排序(Bubble Sort),乃计算机科学领域排序算法的简简易者。知其身:它重复地走访过要...

2022-10-06 21:59:00 38

原创 从硬件缓存入门到并发编程三要素详解 Java中 volatile 、final 等关键字解析、单例模式等案例

缓存(Cache memory)是硬盘控制器上的一块内存,是硬盘内部存储和外界接口之间的缓冲器。案例:**排名世界第一的代码被玩坏了的单例模式****DCL(double checked)**:加入 volatile 保证线程安全,其实就是保证有序性。众所周知现在的互联网大型项目,都是采用分布式架构同时具有其**“三高症状”**,**高并发、高可用、高性能**。高并发为其中最重要的特性之一,在高并发场景下并发编程就显得尤为重要,其并发编程的特性为**原子性、可见性、有序性**。

2022-10-04 20:00:00 275

原创 java入门基础 static final 关键字 修饰符 解释(通俗易懂)

final 和static和 final static 区别解释?static是用来修饰静态资源的(包括类、方法、变量等),final 是用来保证当前变量为常量,final static即保证为静态常量(意思就是不依赖于对象去调用,也不可以被改变)final 可以用在方法参数声明中,保证引用变量不会被改变(只读)。这其中也需要看所修饰的为对象还是变量或者常量首先解释一下...

2022-10-04 14:02:00 55

原创 从硬件缓存入门到并发编程三要素详解 Java中 volatile 、final 等关键字解析、单例模式案例...

引入高速缓存概念在计算机在执行程序时,以指令为单位来执行,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问题,由于CPU执行指令的速度很快,而从内存读取数据和向内存写入数据的过程相对很慢,因此如果任何时候对数据的操作都要通过和内存的交互来进行,会大大降低指令执行的速度。因此就引入了...

2022-10-03 18:23:00 51

原创 Spring整合Mybatis连接MySQL数据库配置 异常 情景再现

Spring整合Mybatis连接MySQL数据库配置情景再现注意点一:数据库Table表字段和Entity实体类属性名不匹配解决:方法一:开启下划线转大驼峰命名mybatis: configuration: map-underscore-to-camel-case: true # 开启下划线转大驼峰方法二:使用VO类方法三:在Mapper层使用Ma...

2022-10-02 16:23:00 51

原创 SpringBoot 配置跨域 和版本问题

SpringBoot 配置跨域 和版本问题使用 springboot版本:2.3.6.RELEASE、2.4.2、2.7.4使用返回新的过滤器报错!!!报错信息:IllegalStateExceptionPost-processing of merged bean definition failed; nested exception is java.lang.IllegalStateE...

2022-10-01 21:28:00 85

原创 简单聊聊SQL注入

我们在日常中的处理是将字符串参数作为SQL语句进行拼接,但是加入客户端传入SQL语句关键字。常人看了既然#{}报错那么我用${},正中SQL注入的下怀,这个时候倘若我们的服务端 Java 代码没有对传入参数进行拦截处理,SQL注入条件满足!出现SQL注入问题的原因和上面一样,都是由于拼接SQL导致的,只不过方式不同。实例:模拟登录请求传入用户id和密码参数,使用字符串拼接导致的SQL注入。的方式,但是在后台代码中一定要进行数据参数的校验等手段,防止SQL注入.,需要使用动态SQL语法中。

2022-09-30 21:06:21 348

原创 聊聊SQL注入

SQL注入问题概述:首先SQL注入是一个非常危险的操作,很可能被一些不怀好意的人钻空导致我们系统出现异常等状况,比如数据库遭到破坏或被入侵。直接原因:在页面中有数据交互的地方,攻击者构造sql语句,使web服务器执行恶意命令访问数据库。根本原因:服务端没有严格检验用户数据导致SQL注入漏洞,像使用JDBC的Statement语句添加SQL语句,如下:由于我...

2022-09-30 19:14:00 40

原创 RabbitMQ 死信队列和延时队列

RabbitMQ 死信队列和延时队列TTL(Time To Live)消息的TTL就是消息的存活时间RabbitMQ中对队列、消息都可以设置TTL对队列设置TTL,就是队列没有消费者连着的保留时间;对消息设置TTL,超过了这个时间,消息就死了,称之为死信。如果队列设置了,消息也设置了,那么会取小的。所以一个消息如果被路由到不同的队列中,这个消息死亡的时间有可能不一样(不同的队列设置...

2022-09-25 23:33:00 42

原创 Redis学习笔记

Redis学习 记录1、NoSQL 数据库NoSQL,泛指非关系型的数据库。分类键值(Key-Value)存储数据库列存储数据库文档型数据库分类Examples举例典型应用场景数据模型优点缺点键值(key-value)Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB内容缓存,主要用于处理大量...

2022-09-24 22:31:00 44

原创 JVM学习笔记记录

目录JVM学习记录一、什么是JVM1.1、定义:1.2、优点1.3、JVM、JRE和JDK区别二、内存结构2.1、整体结构2.2、程序计数器2.3、虚拟机栈问题辨析内存溢出线程运行诊断3、本地方法栈4、堆定义特点堆内存溢出5、方法区结构内存溢出常量池运行时常量池常量池与串池的关系6、直接内存释放原理直接内存的回收机制总结7、类加载器8、双亲委派模式三、垃圾回收1、如何判断对象可以回收引用计数法可...

2022-09-23 12:32:00 45

原创 Java面试题总结(持续更新中······)

目录一. Java相关1.1 多线程相关1、谈谈volatile、synchronized关键字1.2 JUC相关1.3JVM相关1. 说说你对垃圾回收原理和你的理解?垃圾回收阶段1.1、如何判断对象可以回收引用计数法可达性分析算法五种引用强引用软引用强引用,软引用,弱引用,幻象引用有什么区别?1.2、垃圾回收算法标记-清除标记-整理复制1.3、分代回收1.4、垃圾回收器2、你了解的常用JVM参...

2022-09-22 23:20:00 31

原创 Windows常用命令手册

cmd 命令手册端口命令查看端口占用详情netstat -ano查找过滤命令findstr (相似Linux中grep)例如需要查找8080端口占用详情:netstat -ano | findstr 可查出对应的进程pid列举所有运行线程:tasklist根据 pid=4136 查找进程:tasklist | findstr 4136杀死 pid=413...

2022-09-21 23:19:00 38

原创 Docker常用命令总结

Docker常用命令重启docker命令systemctl restart docker进入镜像docker exec -it mysql /bin/bash移除指定容器docker rm -f <containerid>删除未启动成功的容器docker rm $(docker ps -a|grep Created|awk '{print $1}')...

2022-09-21 23:17:00 35

原创 Linux常用命令总结

端口防火墙相关开放指定端口:firewall-cmd --zone=public --add-port=5601/tcp --permanent开启/重启防火墙:systemctl start firewalldfirewall-cmd --reload查看端口号:netstat -ntlp #查看当前所有tcp端口·netstat -ntulp |grep 1...

2022-09-21 23:15:00 37

原创 设计模式之代理模式(Proxy Pattern)

1、代理模式1.1、介绍概念代理模式(Proxy Pattern)给某一个对象提供一个代理,并由代理对象控制原对象的引用。代理对象在客户端和目标对象之间起到中介作用 。代理模式是常用的结构型设计模式之一,当直接访问某些对象存在问题时可以通过一个代理对象来间接访问。用途:当提供服务方不想让用户访问真正角色时,采用代理模式当需要横切一些业务时,为了不破坏原有的类,也可采用代理模式...

2022-09-20 17:22:00 35

原创 MySQL 通信异常或者通信连接失败

1、异常详情com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure2、解决方案url需要添加属性useSSL=false,完整url路径如下-url: jdbc:mysql://[服务主机ip]:3306/database?useUnicode=true&useSS...

2022-09-20 16:57:00 112

原创 如何解决高并发和大流量

简介:名词解释:并发 在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任意一个时刻上只有一个程序在处理机上运行。名词解释:并发在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任意一个时刻上只有一个程序在处理机上运行。我们说的高并发是什么?上面的定义明显...

2022-05-15 23:37:00 30

原创 串池StringTable与s.intern()方法 、 验证s.intern()方法(基于jdk1.8)(附1.6对比)

验证s.intern()方法(基于jdk1.8)(附1.6对比)1、在 jdk1.8中 s.intern()方法指的是尝试将字符串对象s放入串池中 :如果串池中有,则不会放入;若没有,放入(和堆中为同一对象)。最终返回的是串池中的对象(不论放不放入)如:String s1 = s.intern(); s1指的是串池中的常量对象2、下面是两个测试横向对比(1.8环境):...

2022-05-10 18:23:00 41

原创 MyBatis-Plus 笔记

MyBatis-Plus学习(3.3.1.tmp版本教程)1、快速开始1.1、数据库脚本DROP TABLE IF EXISTS user;CREATE TABLE user( id BIGINT(20) NOT NULL COMMENT '主键ID', name VARCHAR(30) NULL DEFAULT NULL COMMENT '姓名', age ...

2022-04-27 13:53:00 40

原创 thymeleaf--- 自动生成表格索引

thymeleaf 自动生成表格索引 连续id完美解决前端显示数据库id不连续<tbody><!-- 遍历lists --><tr th:each="list:${lists}"> <!--list就是我们所获得的数据,在list变量后加Stat,即listStat,它就变成了所谓的状态变量,每输出一行数据序号+1--> ...

2022-03-27 21:43:00 87

原创 整合druid无法监控SQL、filter类名为空问题

整合druid无法监控SQL、filter类名为空问题

2022-03-25 15:07:32 1850

原创 SpringBoot整合JDBC

SpringBoot整合JDBC1、新建一个 jdbccontroller.java@RestControllerpublic class JDBCController { @Autowired JdbcTemplate jdbcTemplate; //查询数据库的所有信息 //没有实体类,数据库中的东西,怎么获取? Map @GetMappin...

2022-03-24 23:59:00 31

原创 Spring中文文档

https://www.docs4dev.com/docs/zh/spring-framework/5.1.3.RELEASE/reference/

2022-03-24 17:18:25 676

原创 数据结构与算法----# 一、排序

一、排序1、比较器ComparableJava中的比较器(排序) - 情陌人灬已不在 - 博客园 (cnblogs.com)Comparable和Comparator接口都是为了对类进行比较,众所周知,诸如Integer,double等基本数据类型,java可以对他们进行比较,而对于类的比较,需要人工定义比较用到的字段比较逻辑。可以把Comparable理解为内部比较器,而Comparat...

2022-03-16 22:02:00 29

原创 springboot--- 静态资源和模板引擎thymeleaf

七、静态资源和模板引擎7.1、 静态资源映射By default, Spring Boot serves static content from a directory called /static (or /public or /resources or /META-INF/resources) in the classpath or from the root of the Servl...

2022-03-15 23:55:00 59

原创 SpringMVC --- 环境配置常见问题

# 环境配置常见问题问题一:web文件夹小蓝点消失解决方法:在项目结构中modules->右键该项目->Add->web->编辑查看web目录问题二:配置Tomcat添加项目并发布选择Tomcat local配置-> fix->选择需要发布的项目问题三:找不到依赖目标包项目结构->artificial->选...

2022-03-15 23:53:00 34

原创 byte和bit

byte(字节)和bit(比特):1、区别:bit(比特)是计算机中最小的存储单位byte(字节)是计算机中最基本的存储单元2、计算机存储:在计算机存储中,都是采用二进制语言,只有0和1。存储一个0或1就需要1比特(bit),也称为1位每个byte(字节)由8个bit(比特)构成 即:1byte=8bit3、扩展:计算机的存储能力以字节和多字节来衡量的,生活中所说的电脑...

2022-03-15 12:56:00 49

原创 spirngboot---自动配置原理

六、自动配置原理6.1、自动装配原理以WebMvcProperties为例:WebMvcProperties.class源码//从配置文件中获取指定的值和bean的属性进行绑定@ConfigurationProperties( prefix = "spring.mvc" //前缀)public class WebMvcProperties { private or...

2022-03-14 15:44:00 37

原创 Springboot-----JSR校验(通俗易懂)

JSR306校验及配置文件环境5.1、使用例子在Person类name属性加上@Email校验,当输入不是合法的电子邮件时报错!!!@Component //注册bean@ConfigurationProperties(prefix = "person")@Validated //数据校验public class Person { @Email(message="不是一个合...

2022-03-13 21:03:00 49

原创 整合SSM框架

9、整合ssm框架9.1、环境要求环境:IDEAMySQL 5.7.19Tomcat 9Maven 3.6要求:需要熟练掌握MySQL数据库,Spring,JavaWeb及MyBatis知识,简单的前端知识;数据库环境创建一个存放书籍数据的数据库表CREATE DATABASE `ssmbuild`;USE `ssmbuild`;DROP TABLE IF ...

2022-03-11 23:48:00 25

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除