- 博客(20)
- 收藏
- 关注
转载 druid连接池源码分析
DruidDruid是java语言中最好的数据库连接池之一,经常在项目中使用。本文基于目前最新的版本1.1.6,探索下Druid连接池的实现原理。因为涉及到各种复杂逻辑,暂未想到比较好的图示来描述源码,因此本文更多的是代码+文字,大家见谅哈首先,提出几个问题,我们带着这几个疑问去学习druid连接池源码druid常用的参数druid如何创建连接的connection是如何被回收利用的druid如何维护、清理连接druid怎么解决并发情况下获取、创建、关闭连接的问题DruidDataSourc
2021-08-24 15:42:51
1216
1
原创 对java自带的类理解
我们安装jdk,java环境,然后用idea编程,我们会发现java提供了很多类。比如网络socket,IO流文件处理,web相关的类等等。这些类都是java帮我们弄好了,我想了下,既然java让我们用它的语言,它肯定会帮我们提供很多不同用途的类,比如sockert这种网络通信类,这种类我们自己无法用java语法写出来,只能java提供,并且java提供的类肯定是jvm能识别的,所以我们直接用即可。hashmap这些类我们自己可以根据java语法写出来,但是不一定效率高,并且我们也没必要重复造轮子。jav
2021-06-18 17:43:52
261
转载 SpringBoot 中Filter的作用以及使用
SpringBoot 中Filter的作用以及使用1、Filter的作用Filter使用户可以改变一个 request和修改一个response.Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter其实是一个”servlet chaining”(servlet 链).通俗点说法filter相当于加油站,request是条路,respons
2021-06-08 15:41:22
889
转载 druid连接超时时间20分钟引起的血案
1.问题描述生产环境当数据量大的时候有时就会出现挂批问题。(默认3分钟定时任务调度一次,可是有时候定时任务启动了,但是业务数据没有处理)。挂批就造成大量业务挤压,没有处理。这时候就需要人手工处理。2.问题分析2.1 bug 反思路分析JobDetail#execute/*这段代码中首先判断一下批次的状态是否是running,若是running那么直接返回,不调用处理业务逻辑代码/if (RUNNING.equals(taskInfo.getStatus())) { logger.
2021-06-08 10:12:49
2881
原创 shiro整合redis出现的问题
shiro-redis是网上的大牛开源的一个插件(github地址:https://github.com/alexxiyang/shiro-redis ),最近在用它的时候老是报如下错误(版本是3.1.0):We need a field to identify this Cache Object in Redis. So you need to defined an id field which you can get unique id to identify this principal. Fo.
2021-03-21 16:57:54
766
转载 spring源码解读
https://blog.youkuaiyun.com/weixin_43734095/article/details/106309373
2020-11-14 09:42:18
159
转载 Centos7部署Oracle11g以及排错
Cenots7部署Oracle11g先安装好jdk8(https://blog.youkuaiyun.com/weixin_44538107/article/details/88683530)这是我在网上找的一个博主的。跟着教程可以很快安装jdk8在确定安装好JDK8后,然后进入安装。 Oracle11g安装包 下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html .
2020-08-05 17:21:25
553
1
原创 运行themeleaf时,出现的问题,虽然出现了错误,但是不影响正常使用,解决方案是: fiva.ico
2020-07-24 17:17:15.282 ERROR 11104 — [io-8080-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.thymeleaf.exce.
2020-07-24 17:42:18
292
原创 redis整合springboot
springboot与jedis的整合1、创建SpringBoot工程使用idea自带的Spring Initializr创建一个基本的SpringBoot工程。2、修改POM文件工程创建成功后,修改pom文件,添加所需的jar包 org.springframework.boot spring-boot-starter-data-redis redis.clients jedis 3.1.0 org.projectlombok
2020-07-19 18:01:48
223
原创 jedis整合Springboot以及redis的分布式
springboot与jedis的整合1、创建SpringBoot工程使用idea自带的Spring Initializr创建一个基本的SpringBoot工程。2、修改POM文件工程创建成功后,修改pom文件,添加所需的jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter...
2020-07-19 17:59:31
209
转载 mysql主从复制
myqsl中的主从复制,主要是通过binlog日志实现,就是主表增删改都会记录到相应的binlog,然后从表会读取主表的binlog,然后根据里面的信息,然后改变自己的值,主表一般是增删改,从表是查询,并且不要去修改从表的值了,从表自己会去主表中同步,为什么用主从复制呢?这样更好的提高mysql的性能,还有吞吐量,...
2020-07-08 17:38:16
114
转载 JVM内存模型以及类加载机制
JVM内存模型Java代码是运行在Java虚拟机(JVM)上的,Java虚拟机通过解释执行(解释器)或编译执行(编译器)来完成。Java内存模型分为5个部分:方法区(Method Area),Java堆(Heap),Java栈(VM Stack),本地方法栈(Native Method Stack),程序计数器(PC 寄存器)(图片来源:http://gityuan.com/images/jvm/jvm_memory_1.png)线程共享区:方法区(Method Area):方法区是各个线
2020-07-06 12:46:41
540
转载 线程池
原文链接:https://editor.youkuaiyun.com/md?articleId=107102851收起我们都知道,java中有ThreadPoolExecutor提供的线程池服务,非常好用。可以有效的解决了一些异步业务,提高系统性能。但是java中配置和使用线程池有点繁琐,而在springboot中,线程池的配置简直就是轻而易举。下面直接上干货。springboot中主要使用配置类来配置线程池@Async注解可以使用配置好的线程池其他的配置例如yml或者properties文件,按照sprin
2020-07-06 12:44:52
193
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人