Java
文章平均质量分 78
FugLee
在地里面除草,边学 Java -_-
展开
-
Spring系列(九) --- 谈谈 Spring 中事务的隔离级别及传播机制
例如我们去超市购物消费了 500 元, 然后使用支付宝进行付款操作, 我付款成功后账户肯定时 - 500, 那理应超市的账户中 + 500; 但是如果没有事务这个概念, 有可能我付款成功后, 超市并没有 + 500, 也就意味着我这 500 元平白无故的消失了. 因此, 事务就是为了解决这样的问题而生的, 这这一组操作要么一起成功, 要么一起失败.原创 2023-04-06 08:00:00 · 585 阅读 · 0 评论 -
Spring系列(八) --- 详述 SpringAOP--面向切面编程的相关概念及基本操作
AOP 其实就是针对程序中的某一个类或者某一个功能做统一的处理, 如针对登录功能在前后端之间可以做一些验证操作, 验证用户名或者密码是否正确.原创 2023-04-03 09:30:00 · 283 阅读 · 0 评论 -
Spring系列(七) --- SpringBoot 自定义打印日志的两种方式
SpringBoot 自定义打印日志的两种方式.原创 2023-03-31 09:30:00 · 1284 阅读 · 0 评论 -
Spring系列(六) --- SpringBoot 与 Servlet 的比较及 Spring 读取配置文件的方式
SpringBoot 和 Servlet 的比较及 Spring 读取配置文件的方式原创 2023-03-30 09:57:14 · 325 阅读 · 0 评论 -
操作系统(第七节) ---文件及 IO 操作
操作系统中文件及 IO 的一些进本操作.原创 2023-03-15 20:18:50 · 259 阅读 · 0 评论 -
操作系统(第六节) --- 关于线程的同步与死锁问题
有这样一个场景, 商场发布了 10 张优惠券供消费者抢购, 因为抖音等自媒体的加持, 当天一共有二十个人等点进行抢购, 因为网络延迟原因, 系统并没有及时的减少优惠券的数量, 这就导致二十名消费者都抢到了优惠券, 致使优惠卷的数量成为了负数; 这就是不同步导致的问题.原创 2023-03-13 17:11:03 · 261 阅读 · 0 评论 -
操作系统(第三节) --- 线程等待/休眠/状态及 Runnable 和 Callable 的简单使用及原理
关于线程和进程的基本概念☛操作系统中线程和进程的概念理解 这篇文章已经有了很详细的解释, 接下来主要来讲讲线程等待与线程休眠 / 线程的几种状态 / Runnable 和 Callable 与 Thread 的概念和区别及 Executor 框架是什么样的.原创 2023-03-11 11:13:34 · 614 阅读 · 0 评论 -
操作系统(第五节) --- ThreadLocal 的简单使用并深扒其实现原理
在多线程环境下, 如果想要保证每个线程都能独立于其它线程独自运行, 可以使用 ThreadLocal 来解决; ThreadLocal 就是用于提供线程局部变量的一个工具, 也就是说 ThreadLocal 可以为每个线程创建一个单独的变量副本; 其概念与同步机制正好相反, 同步机制是保证多线程环境下数据的一致性; 而 ThreadLocal 则是保证多线程环境下数据的独立性.原创 2023-03-10 15:57:36 · 379 阅读 · 0 评论 -
SpringCloud系列(十五)[分布式搜索引擎篇] - 结合实际应用场景学习并使用 RestClient 客户端 API
前面的文章具体介绍了是索引库及文档的一些基本操作指令, 指令还是挺简单的; 那么实际应用场景下, 我们是如何操作 ElasticSearch 的呢? 其实 ElasticSearch 官方已经为我们提供了各种不同语言的客户端, 目的就是为了来操作 ElasticSearch, 这些客户端的本质就是组装 DSL 语句, 通过 http 请求发送给 ElasticSearch.原创 2023-03-06 15:12:53 · 391 阅读 · 0 评论 -
SpringCloud系列(十二)[MQ 篇] - 一篇文章搞定 RabbitMQ 的使用
上篇文章已经讲过了 MQ 的概念及 RabbitMQ 的用途和部署, 本篇文章将对 RabbitMQ 进行深一步的理解和使用, 主要写的内容是 RabbitMQ 的结构及消息模型是什么样的, 并且以例子的形式来讲解 SpringAMQP 的使用.原创 2023-02-08 11:31:01 · 783 阅读 · 0 评论 -
SpringCloud系列(十一)[MQ 篇] - 详述 RabbitMQ 五种模型的结构及具体实现
详述 RabbitMQ 五种模型的结构及具体实现.原创 2023-02-08 11:24:35 · 711 阅读 · 0 评论 -
SpringCloud系列(六)Feign 客户端的配置及使用
Feign 是一个声明式的 http 客户端, 其主要的作用就是帮助我们实现 http 的请求发送, 正如官网所说, Feign使编写Java http客户端更容易.原创 2022-12-21 22:12:39 · 1922 阅读 · 0 评论 -
SpringCloud系列(五)Nacos 注册中心配置管理的设置及使用
介绍几种 Nacos 常用的配置, 如统一配置管理的步骤, 如何配置自动刷新及多环境配置优先级问题.原创 2022-12-15 22:46:49 · 644 阅读 · 0 评论 -
SpringCloud系列(四)Nacos 的三个有利配置(服务分级存储 / 环境隔离 / 负载均衡策略))
我们都知道在京东商城购买商品,如果选择的是京东自营,那么几乎都是次日达,因为京东在许多城市周边建立了自营仓库,如果说在济南下单买了一个优派的显示器,你会发现发货地址是德州xxx仓库;如果不是购买的自营商品,那么可能是在很远的地方发货,导致收货周期变长,并且浪费了大量的资源,如运输资源、人力,如果恰逢遇上某个城市疫情管控,可能收货周期遥遥无期~~原创 2022-12-01 09:00:00 · 320 阅读 · 0 评论 -
SpringCloud系列(三)Nacos 注册中心的搭建及服务发现
在 SpringCloud 系列(一)里面介绍了 Eureka 注册中心主要用来做什么,如何搭建并进行了简单的测试,但是 Eureka 有诸多不便之处,如需要配合 SpringCloud config 来实现,我们还需要再写一个 Module 进行启动等,针对某些不便及技术的延伸,于是阿里巴巴就开发出了 Nacos 这个产品,现在也是 SpringCloud 中的一个重要组件,相比较于 Eureka 的功能更加丰富;当然并不是说 Eureka 现在就没人用了,其实在国外还是有很多使用 Eureka 的原创 2022-11-29 09:57:47 · 404 阅读 · 0 评论 -
SpringCloud系列(二)Ribbon 负载均衡的原理及详细流程
其实 Ribbon 负载均衡可以认为是一种策略,也可以说是某种规则,当消费者发起请求时,就会被负载均衡拦截器给拦截到,然后获取到请求中的 id,再按照某种规则选择某个服务,继而修改请求 url,再次发起请求,这时候才获取到提供者的服务;原创 2022-11-21 17:03:01 · 442 阅读 · 0 评论 -
计算机网络(第六弹) --- 与 HTTP 有关的八个问题
当我们用浏览器打开一个网页时基本上都是基于 HTTP 协议来进行传输的, 其实用 APP 来打开一个界面看到的 APP 中的内容大概率也是基于 HTTP 协议传输的, 因此 HTTP 对于网络而言的重要性不言而喻! HTTP 这个协议在传输层主要是基于 TCP 来实现的, TCP 是传输字节流的协议, 只是把数据按照字节来传输而已, 并没有传输一个 “结构化” 的数据, 而应用层协议就是将传输的字节流赋予一定的含义, 因此 HTTP 协议又可以认为是应用层协议中的典型代表.原创 2022-11-18 16:14:01 · 847 阅读 · 0 评论 -
【Debug】关于 nginx 上传文件时出现 413 及 500 错误码解决方法
Nginx 作为一个高性能的 HTTP 和 反向代理 web 服务器具有占用内存少, 并发能力强等特点,可以说 Nginx 专为性能和效率而生, 如 tomcat 的并发量大约在 100 多, 而 Nginx 的并发量可以达到 5 万之多;Nginx 的主要作用还是反向代理, 实现负载均衡, 何为反向代理,原创 2022-11-15 17:00:00 · 1728 阅读 · 1 评论 -
计算机网络(第五弹) --- Socket 套接字详细介绍及套接字通信流程和编程的具体实现
Socket 翻译过来中文含义有(电源)插座;(电器)插口, 插孔等含义, 也就是说在电源领域, 我们将 Socket 称之为插座, 在电器领域, 我们将 Socket 称之为插孔, 那我们是不是就可以理解为在计算机通信领域, 担任插座或者插孔这个含义的 Socket 就定义成了套接字呢?原创 2022-11-14 14:00:00 · 1223 阅读 · 0 评论 -
计算机网络(第四弹) --- TCP 套接字编程的通信模型及实现流程
这里我们简单写一个回显服务器当做 🌰 来解读流套接字编程用到的方法和逻辑, ServletSocket 是创建 TCP 服务端 Socket 的 API, 主要处理客户端的连接, Socket 主要用来和客户端进行具体的交互, 这里还需要注意 TCP 协议有连接, 类似于打电话; 此处我们实现的是一个长连接版本的服务器, 关于长连接和短连接的区别, 后面会解释.原创 2022-11-12 18:00:00 · 605 阅读 · 0 评论 -
计算机网络(第三弹) --- UDP 套接字编程的通信模型及实现流程
对于 UDP 协议来说, 具有无连接, 面向数据报的特征, 因此每次都是没有建立连接, 并且一次性发送全部数据报, 一次性接收全部的数据报; java 中使用 UDP 协议通信主要基于 DatagramSocket 类来创建数据报套接字, 并使用 DatagramPacket 作为发送或接收的 UDP 数据报.原创 2022-11-11 19:57:27 · 559 阅读 · 0 评论 -
【Debug】ruoyi-vue 启动后登录界面显示系统接口404异常问题解决办法
首次启动若依项目登录界面出现这个问题百分之九十以上的可能就是端口号的问题, 可能你的端口号已经被占用, 并且进程并没有杀掉, 这时候如果你只改后端的端口号的话还是会报错, 因此用下面的方法可以解决这个问题!!原创 2022-11-07 11:00:11 · 13283 阅读 · 4 评论 -
Redis系列(一) --- Jedis 及 SpringDataRedis 快速入门
Jedis 及 SpringDataRedis 的使用, 快速入门.原创 2022-10-19 15:39:00 · 1293 阅读 · 0 评论 -
Spring系列(四) --- 请求转发(forward)和请求重定向(redirect)的区别
请求转发(forward)和请求重定向(redirect)原创 2022-10-12 16:16:27 · 1585 阅读 · 0 评论 -
Spring系列(五) --- Spring 对象三种注入方式的比较
Spring 对象三种注入方式的比较及优缺点原创 2022-10-12 10:36:44 · 459 阅读 · 0 评论 -
MyBatis 中 #{} 和 ${} 的区别看完这篇文章一目了然
MyBatis 中 #{} 和 ${} 的区别看完这篇文章一目了然原创 2022-09-23 22:00:41 · 1777 阅读 · 7 评论 -
Spring系列(三) --- 详述对 Bean 的作用域及生命周期的理解
Bean 的作用域及生命周期原创 2022-09-19 22:57:55 · 254 阅读 · 0 评论 -
Spring系列(二) --- ApplicationContext 和 BeanFactory 的区别
ApplicationContext 和 BeanFactory 的区别原创 2022-09-18 09:55:14 · 184 阅读 · 0 评论 -
Spring系列(一) --- 什么是 Spring, IoC 和 DI 的区别是什么?
什么是 Spring? IoC 和 DI 的区别是什么?原创 2022-09-15 17:31:40 · 455 阅读 · 0 评论 -
Maven 国内源的配置方式(以阿里云为例)
Maven 配置国内镜像源原创 2022-09-15 16:47:59 · 1457 阅读 · 0 评论 -
Java 基础系列(二十) --- Tomcat 的本地部署及 SmartTomcat 的使用
Tomcat 的本地部署和 Smart Tomcat 的使用原创 2022-08-30 16:54:25 · 1338 阅读 · 1 评论 -
Java 基础系列(二十一) --- Servlet 项目的搭建和部署
Servlet 的创建和部署原创 2022-08-30 16:51:35 · 1005 阅读 · 1 评论 -
排序算法(5)--归并排序
归并排序算法的使用原创 2022-07-13 19:58:50 · 215 阅读 · 0 评论 -
排序算法(4)--冒泡排序与快速排序
交换排序: 冒泡排序和快速排序原创 2022-07-09 11:08:19 · 213 阅读 · 4 评论 -
排序算法(3)--堆排序与直接选择排序
选择排序分为直接选择排序和堆排序原创 2022-07-04 19:09:02 · 150 阅读 · 0 评论 -
排序算法(2)--希尔排序
希尔排序的思想及过程原创 2022-06-30 16:46:53 · 224 阅读 · 2 评论 -
排序算法(1)--直接插入排序与折半插入排序
插入排序--直接插入排序和折半插入排序原创 2022-06-28 09:31:50 · 391 阅读 · 4 评论 -
八大基于比较的排序算法及三大基于非比较的排序算法总结
排序是历年考试常考, 面试常问的问题, 因此需要多加练习最基本的几种排序方式, 对于剩下的排序算法只需要理解即可.原创 2022-06-24 21:59:05 · 766 阅读 · 1 评论 -
Java 基础系列(一) --- 对封装的理解
封装的本质就是让类的调用者不必太多的了解类的实现者是如何实现的, 只要知道如何使用类就行了, 这样就降低了类使用者的学习和使用成本, 也降低了代码的复杂程度.原创 2022-06-15 15:09:45 · 662 阅读 · 3 评论 -
Java 基础系列(四) --- Java数据属性在内存中的布局
数据属性在内存中的布局原创 2022-06-15 11:11:23 · 239 阅读 · 0 评论