自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Spring】Spring中的设计模式

但是Spring中的责任链模式没有这两个方法,而是抽出一个公共的处理方法,方法内有数组和下标来完成链式。传统的设计模式,抽象处理者会有一个方法设置和获取具体处理者的下一个处理者的方法。spring中Aop的责任链模式,相对于传统的责任链模式做了一定的改造。广播器:其实就是我们的抽象目标,包含了添加删除,广播事件方法。事件源:触发事件的人,将事件添加到广播器中。Spring中的事件监听做了一定的变动。监听器:监听广播器广播的事件。Spring中的源码介绍。Spring源码介绍。Spring源码介绍。

2023-08-04 19:26:39 784

原创 【Redis】面试题

redis是开源的,数据存储在内存的非关系型数据库。- 可以作为数据库存储数据,缓存数据,也可以作为消息中心件。- redis的网络请求模块是一个单线程的,基于多路复用的性能I/O模型实现redis单线程机制下的数据高速访问。- 具备数据持久化的功能,提供了AOF和RDB两种数据持久化机制,确保服务宕机之后,数据不会丢失。- 哨兵机制和Cluster集群模式确保redis的高可用。占用内存空间很大的key。1. 网络阻塞,获取bigkey时,传输的数据量较大,增加带宽压力。2. 操作效率低。

2023-07-28 16:03:55 491

原创 【Java多线程】锁

乐观锁:线程获取不到锁资源时,会将该线程挂起(BLOCKED,WAITING),涉及到用户态和内核态的切换,而这种切换是非常消耗资源的。不可重入锁:线程A拿到锁资源,此时线程A尝试再次拿取同一把锁资源,无法获取到,因为锁被自身占用着,需要等自己将锁释放才能再次获取到。悲观锁:线程获取不到锁资源时,会再次调度CPU重新尝试获取锁资源。独占锁:同一时刻,只有一个线程能获取到锁资源。可重入锁:同一个线程可以重复获取一把锁。可中断锁:抢占过程可以被中断的锁。共享锁:多个线程可以共享一把锁。

2023-07-21 11:58:24 189

原创 【Java多线程】并发容器

ConcurrentHashMapCopyOnWriteArrayListCopyOnWriteArraySetConcurrentLinkedQueueoncurrentLinkedDueueConcurrentSkipListMapConcurrentSkipListSetArrayBlockingQueueLinkedBlockingQueueLinkedBlockingDueuePriorityBlockingQueueSynchronousQueueLinkedTransf

2023-07-20 23:42:42 144

原创 【Java多线程】实现线程按顺序执行

【代码】【Java多线程】实现线程按顺序执行。

2023-07-20 22:57:57 297

原创 【Java多线程】生命周期,线程状态,状态流转

抢占式调度模型:系统按照线程优先级分配CPU时间片。优先级高的线程优先分配CPU时间片,如果所有就绪线程的优先级相同,那么会随机选择一个,优先级高的线程获取的CPU时间片相对多一些。分时调度模型:系统平均分配CPU的时间片,所有线程轮流占用CPU,即在时间片调度的分配上所有线程“人人平等”。作用:放弃当前的CPU资源,让其他任务去抢占CUP资源(只会给相同优先级或者更高优先级的现场运行的机会)运行中的线程不一定一直都会是运行状态,没有获得时间片又会回到就绪状态。就绪线程抢占到CPU时间片会进入到运行状态。

2023-07-20 14:48:37 190

原创 【Java多线程】面试题

线程池说明参考:https://blog.youkuaiyun.com/ChrisLee2013/article/details/131818811

2023-07-19 23:49:43 73

原创 【Java多线程】创建线程的多种方式

参考:https://blog.youkuaiyun.com/ChrisLee2013/article/details/131818811。

2023-07-19 23:35:26 93

原创 【Java多线程】线程池

*** 执行线程 具体由子类实现corePoolSize:核心线程数maximumPoolSize:最大线程数keepAliveTime:当线程数超过核心线程数后,非核心线程的保持活性时间unit:活性时间单位workQueue:工作队列threadFactory:线程工厂handler:拒绝策略。

2023-07-19 23:13:11 331

原创 【JUC】原子类

这里写目录标题

2023-07-18 18:55:43 68

原创 【JUC】AQS源码解析

是JDK提供的一套基于FIFO同步队列的阻塞锁和相关同步器的一个同步框架,通过AQS可以很容易的实现我们自己需要的独占锁或共享锁。又称为队列同步器。它通过一个int类型的成员变量state来控制同步状态,state = 0 是,则说明没有任何线程占有锁。它支持实现共享锁与独占锁。独占锁:同一时间,只有一个线程可以拿到锁,state只有0和1两个状态。共享锁:同一时间,可以有多个线程拿到锁协同工作,锁的状态大于等于0。

2023-07-18 16:34:13 142

原创 多线程分批执行保存错误事务回滚

【代码】多线程分批执行保存错误事务回滚。

2023-07-13 14:28:41 226

原创 CountDownLatch分批执行工具类

【代码】CountDownLatch分批执行工具类。

2023-06-26 15:51:54 149

原创 Spring IOC AOP

Spring框架概述Spring是轻量级的开源的JavaEE框架Sping可以解决企业应用开发的复杂性Spring有两个核心部分:IOC和AOPIOC:控制反转,把创建对象的过程交给Spring容器进行管理AOP:面向切面编程,不修改源代码进行功能增强。spring特点方便解耦,简化开发AOP编程支持方便程序测试,整合junit框架方便和其他框架进行整合方便进行事务操作降低API开发难度IOC容器IOC底层原理IOC接口(BeanFactory)IO

2021-07-19 22:35:56 130

原创 Redis缓存雪崩、击穿、穿透

缓存异常问题包括缓存不一致,缓存雪崩,缓存击穿,缓存穿透三个问题。这期主要介绍缓存雪崩,缓存击穿,缓存穿透三个问题。当发生这三个问题时,会导致大量的请求积压到数据库层,请求的并发量很大时,可能会导致数据库宕机或故障。文章目录缓存雪崩缓存击穿缓存穿透总结缓存雪崩缓存雪崩:大量的应用请求无法在redis缓存中进行处理(缓存缺失),大量的请求发送到数据库层。导致数据库压力激增。原因:redis中缓存中大量数据过期,导致大量请求无法得到处理解决办法:1、避免给大量的数据设置相同的过期时间。2、服

2021-07-18 23:08:33 148

原创 HashMap put方法执行流程图

2021-07-15 19:52:29 260

原创 Java虚拟机参数配置和默认值

2021-07-14 18:49:35 313

原创 Redis:缓存异常,数据一致性问题

121

2021-06-18 16:58:32 180

原创 Redis:缓存淘汰策略

本篇文章是基于极客时间蒋德钧老师的redis核心技术与实战redis缓存篇做的学习笔记。为什么需要做缓存?提高请求效率,数据库操作效率不良,请求效率也不良减轻数据库压力,在高并发系统当中,大量请求直接压到数据库层会给数据库造成压力,请求过大可能造成数据库崩溃redis提供了高效的数据存储功能,所以被广泛的应用到了缓存场景当中,既能有效地提升业务应⽤的 响应速度,还可以避免把⾼并发⼤压⼒的请求发送到数据库层。redis是将数据缓存在内存当中,内存与外存的成本不一样,所以当然不能将所有数据缓存在r

2021-06-18 16:56:37 1051

原创 Redis基本类型相关命令(实践看返回值)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入删除线格式欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如

2021-06-17 23:20:44 1986

转载 服务器返回的14种常见HTTP状态码

版权声明:本文为博主原创文章,转载请添加原文地址 https://blog.youkuaiyun.com/q1056843325/article/details/53147180当我们从客户端向服务器发送请求时服务器向我们返回状态码状态码就是告诉我们服务器响应的状态通过它,我们就可以知道当前请求是成功了还是出现了什么问题状态码是由3位数字和原因短语组成的(比如最常见的:200 OK)其中第一位数字...

2018-10-13 00:57:42 377

转载 MySQL存储引擎中的MyISAM和InnoDB区别详解

在使用MySQL的过程中对MyISAM和InnoDB这两个概念存在了些疑问,到底两者引擎有何分别一直是存在我心中的疑问。为了解开这个谜题,搜寻了网络,找到了如下信息:MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)...

2018-09-27 13:45:50 207

转载 23种设计模式介绍以及在Java中的实现

版权声明:http://blog.youkuaiyun.com/anxpp https://blog.youkuaiyun.com/anxpp/article/details/51224293 原创不易,转载请注明出处:http://blog.youkuaiyun.com/anxpp/article/details/51224...

2018-09-17 23:53:36 217

原创 mybatis

一、mybatis架构1、mybatis介绍mybatis本是apache的一个开源项目iBatis,2010年这个项目由apache software迁移到了google code,并且改名为mybatis,实质上对ibatis进行一些改进。目前mybatis在github上托管。mybatis是持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,不需要...

2018-08-29 23:22:15 327

原创 JavaWeb聊天

1、登录注册注册登录验证码页面: https://blog.youkuaiyun.com/ChrisLee2013/article/details/82022547这里使用的是jdbc.properties文件配置数据库本章改为c3p0连接池2、c3p0连接池这里需要导入c3p0的开发包c3p0-config.xml文件内容<?xml version="1.0" encod...

2018-08-25 01:12:45 1063 1

原创 注册登录验证码页面

1、数据库create database charRoom;use charRoom;create table user( username varchar(20), password varchar(20), email varchar(30));2、连接数据库jdbc.properties文件driverClass=com.mysql.jdbc...

2018-08-24 17:55:50 3867

原创 西安ThoughtWorks面试总结

1、HR面1、先让我自我介绍(准备了英语自我介绍吗?)能用英语自我介绍就用英语自我介绍,不能用中文也可以。2、根据你简历上的项目问自己是怎么做这个项目的,在项目中遇到的问题是怎么解决的,在项目中如果与他人出现矛盾是怎么解决的。在学习过程中遇到自己特别不想做的项目是怎么处理的。老师对你的评价是什么。你自己对未来的规划是什么?为什么想来thoughtworks?有什么问题想问我的吗...

2018-08-21 14:50:41 16655 1

原创 SpringMVC注解

Spring+MyBatis 企业开发实战Spring:4.2.0 mybatis:3.4.1处理request body部分的注解:@RequesParam、@RequestBody处理request uri部分的注解:@PathVariable处理request header部分的注解:@RequestHeader、@CookieValue处理attribute类型的注解:...

2018-08-06 20:00:34 193

原创 Maven下载安装配置及仓库路径更改

1. 下载最新Maven官网地址:http://maven.apache.org/download.cgi往下滑找到下面的界面下载apache-maven-3.5.4-bin.zip 和 apache-maven-3.5.4-src.zipapache-maven-3.5.4-bin.zip :我们主要用的maven安装文件apache-maven-3.5.4-src.zi...

2018-08-01 19:03:18 3232

原创 Spring开发中不能识别注解方式问题(JDK1.8更改为JDK1.7)

在学习Spring中,遇到了使用注解方式装配Bean无法识别!!  将JDK1.8改为JDK1.7之后成功!!1. 查看当前电脑JDK版本快捷键:window + r,然后输入cmd,然后在DOS命令下输入java -version,查看JDK版本我已经更改,所以是JDK1.7 2. 更改注册表中所运行的JDK版本window r --->   regedit  进入...

2018-07-31 22:15:23 3103

原创 IOC装配Bean(注解方式)

1.Spring的注解装配Bean首先配置文件(applicationContext.xml)引入约束条件<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org...

2018-07-31 21:56:29 217

原创 IOC装配Bean(XML方式)

1.Spring框架Bean实例化的方式下载Spring开发包:我的百度云盘:https://pan.baidu.com/s/14Jzl4ov0bkOP01wYsMSl2QSpring开发一般用的包+xsd-config.html:https://pan.baidu.com/s/1sbsK7SYVofJ2inE14128vA也可以去官网下载spring-framework-3....

2018-07-31 21:32:23 225

原创 JDBC学习

 ​​​​​1、JDBC简介Java Data Base Connectivity数据库连接。可以直接通过java语言,去操作数据库。是一套标准,它是由一些接口和类组成。2、涉及的两个包java.sql                类:DriverManger                接口  Connection  Statement ResultSet   P...

2018-07-27 12:22:47 169

空空如也

空空如也

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

TA关注的人

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