java学习杂记
文章平均质量分 86
包罗万象的java学习内容,java基础、数据结构等,只要觉得重要,都可以在这里找到你想要的答案
码上开花
这个作者很懒,什么都没留下…
展开
-
mysql优化之覆盖索引与回表
mysql数据存储结构,mysql优化之覆盖索引与回表,了解什么是覆盖索引,什么时候回表,有助于mysql语句的优化转载 2021-12-25 12:55:22 · 2125 阅读 · 0 评论 -
mysql 索引失效分析
mysql 索引失效分析 mysql语句优化 mysql优化原创 2021-12-23 22:33:11 · 999 阅读 · 0 评论 -
详解mysql NULL和 IS NOT NULL以及空字符串
mysql、NULL 和 空字符串的区别,怎样理解NULL 这个字段原创 2021-12-23 14:16:37 · 7484 阅读 · 1 评论 -
详解mysql优化explain 中各个字段的意义
mysql优化,explain后各个字段的意义原创 2021-12-19 21:17:46 · 556 阅读 · 0 评论 -
详解分布式锁三种实现方式数据库、redis、zookeeper
详解分布式锁三种实现方式数据库、redis、zookeeper转载 2021-12-19 20:59:46 · 2476 阅读 · 0 评论 -
缓存穿透、缓存击穿、缓存雪崩解决方案分析
缓存穿透、缓存击穿、缓存雪崩的理解与解决方案分析原创 2021-12-18 18:10:06 · 1018 阅读 · 0 评论 -
消息队列MQ的消息丢失、重复、积压
消息队列使用场景,优缺点以及MQ的消息丢失、重复、积压问题分析与解决方案转载 2021-12-18 14:39:59 · 428 阅读 · 0 评论 -
细谈java static 静态变量和方法
static静态变量学习,final关键词学习原创 2021-12-15 15:44:25 · 1570 阅读 · 0 评论 -
java后台icon font 图标替换
我们知道后台有些菜单图标,一般用的是iconf font,往往免费的一套icon font系统里的图标太少,满足不了我们一些需求,当然也有人说用重复的图标不就可以了,可是作为一个资深程序员,强烈病态的强迫症,怎么可能允许这样的事情发生,不雅观,不完美,因此,本来就具体讲讲怎么自定义一个icon font 图标库.1、首先打开下面链接,点击“selection”你会看到如下很多各种各样的图标IcoMoon App - Icon Font, SVG, PDF & PNG Gene...原创 2021-12-15 10:53:00 · 726 阅读 · 0 评论 -
SpringCloud微服务原理学习
SpringCloud微服务原理、学习、使用SpringCloud微服务 微服务的模式和形式我在前面已经进行部分的提及,但是一直没落实到技术层面,这段时间我也在次研究了一下微服务,下面我先贴出SpringCloud整体涉及的结构上面展示的这些是SpringCloud整体的结构先对这些空间做一个初步的介绍:Ribbon,客户端负载均衡,重试机制。Hystri...转载 2020-04-17 10:08:45 · 215 阅读 · 0 评论 -
java JWT学习 token
一、什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也...原创 2020-04-03 18:27:03 · 350 阅读 · 0 评论 -
java 单点登录(SSO)
java 单点登录(SSO)一、背景 在企业发展初期,企业使用的系统很少,通常一个或者两个,每个系统都有自己的登录模块,运营人员每天用自己的账号登录,很方便。 但随着企业的发展,用到的系统随之增多,运营人员在操作不同的系统时,需要多次登录,而且每个系统的账号都不一样,这对于运营人员来说,很不方便。 于是,就想到是不是可以在一个系统登录,...转载 2020-03-26 18:43:37 · 5253 阅读 · 0 评论 -
java 链表学习
一、链表定义 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的二、链表组成 链表由一系列节点(链表中每一个元素称为节点--Node)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域 链表的构成要素的本质,是节点(Node)的...原创 2020-03-24 16:31:26 · 235 阅读 · 0 评论 -
java 变量、对象、方法存储位置
一个完整的Java程序运行过程会涉及以下内存区域:寄存器 JVM内部虚拟寄存器,存取速度非常快,程序不可控制栈保存局部变量的值,包括:1、用来保存基本数据类型的值;2、保存类的实例,即堆区对象的引用(指针)。也可以用来保存加载方法时的帧。堆 用来存放动态产生的数据,比如new出来的对象。注意创建出来的对象只包含属于各自的成员变量,并...原创 2020-03-23 18:34:36 · 4692 阅读 · 1 评论 -
Java 多线程之悲观锁与乐观锁
Java 多线程之悲观锁与乐观锁参考多篇文章、综合百家之长,整理了这篇文章,mark一下一、悲观锁 总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁...原创 2019-12-14 16:18:37 · 382 阅读 · 0 评论 -
Spring事务管理详解
Spring事务管理详解事务概念回顾什么是事务?事务是逻辑上的一组操作,要么都执行,要么都不执行.事物的特性(ACID):原子性:事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用;一致性:执行事务前后,数据保持一致;隔离性:并发访问数据库时,一个用户的事物不被其他事物所干扰,各并发事务之间数据库是独立的;持久性:...转载 2019-12-11 15:47:27 · 240 阅读 · 0 评论 -
java观察者模式
java观察者模式设计模式两大原则:一、找出应用中变化之处,把它们独立,不要和那些不需要变化的代码混在一起二、面向接口编程而不是面向具体实现一、基本介绍 1、它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。通俗的来讲,其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没...原创 2019-12-06 11:41:58 · 129 阅读 · 0 评论 -
java自定义注解-详细解析
一、注解的概念 1、注解的官方定义 注解是一种能被添加到java代码中的元数据,类、方法、变量、参数和包都可以用注解来修饰。注解对于它所修饰的代码并没有直接的影响。通过官方描述得出以下结论:1、注解是一种元数据形式。即注解是属于java的一种数据类型,和类、接口、数组、枚举类似。2、注解用来修饰,类、方法、变量、参数、包。3、注解不会对所修饰的代码产生直接的影响。...转载 2019-12-05 16:22:28 · 375 阅读 · 0 评论 -
java多线程wait notify/notify all join 分析使用
java多线程wait notify/notify all join 分析使用一、线程状态 先上个图 从上图可以看出 一个线程一共有5个状态1、新建状态 使用new 关键字和Thread类 或者其子类建立一个线程对象后,该线程就处于新建状态,它保持这个状态直到程序start()这个线程。2、就绪状态 当线程对象调用start(...原创 2019-11-08 15:05:54 · 288 阅读 · 0 评论 -
java多线程 synchronized 同步,同步方法,同步代码块,同步实例
synchronized 同步,同步方法,同步代码块,同步实例一、synchronized有啥用呢? 一句话,解决多线程中的并发问题。 具体在什么情况下使用到呢? (1)资源共享 (2)多个线程同时操作同一个资源 当多个线程中出现以上两种情况的时候,被操作的共同资源则会混乱,出现非预期结果,二、并发编程的原则 ...原创 2019-11-08 10:37:04 · 360 阅读 · 0 评论 -
java多线程获取结果CompletionService
java多线程异步获取结果CompletionService 一、前言: 在异步任务程序中,一种常见的场景是,主线程提交多个异步任务,然后希望有任务完成就处理结果,并且按任务完成顺序逐个处理,对于这种场景,Java并发包提供的CompletionService 方法可以帮我们解决。二、定义: 下面我们来看一下这个CompletionService...原创 2019-11-06 17:09:02 · 445 阅读 · 0 评论 -
Java设计模式------建造者模式(Builder)
Java设计模式------建造者模式(Builder)设计模式两大原则:一、找出应用中变化之处,把它们独立,不要和那些不需要变化的代码混在一起二、面向接口编程而不是面向具体实现一、前言 1、定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示 2、主要作用:在用户不知道对象的建造过程和细节的情况下就可以直接创建复杂的对象。 ...原创 2019-10-31 17:02:35 · 253 阅读 · 0 评论 -
java反射(reflex)
java反射reflex 反射获取方法 反射获取属性一、反射概念: 1、一定是在运行状态中进行的 2、对于任意一个实体类,都能够知道这个类的所有属性和方法 3、对于任意一个对象,都能够调用它的任意方法和属性 这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制二、利用反射我们能做什么 1、在运行...原创 2019-10-30 13:54:39 · 507 阅读 · 0 评论 -
java设计模式------代理模式
java设计模式------代理模式(静态代理、动态代理、cglib代理)设计模式两大原则:一、找出应用中变化之处,把它们独立,不要和那些不需要变化的代码混在一起二、面向接口编程而不是面向具体实现一、什么是代理模式? 代理模式的定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生活中常见的中介。举个例...转载 2019-10-29 14:47:20 · 171 阅读 · 0 评论 -
java线程获取结果Callable、Future、FutureTask
java线程获取结果Callable、Future、FutureTask一、提个问题 当我们创建一个线程时,我们想获取线程运行完成后的结果,是否可以用回调的方法来实现?答案是肯定的,可以。例如://定义一个回调接口interface Callable { void call(int num);}public class FutureTest { ...原创 2019-10-24 16:50:55 · 327 阅读 · 0 评论 -
java自定义线程池ThreadPoolExecutor
java自定义线程池ThreadPoolExecutorjava线程获取结果Callable、Future、FutureTask理解 Thread.Sleep 函数自定义创建线程池 在我的文章 Java线程池的使用与分析 里也讲到到线程池的各个概念,今天我们就来实践一下,自定义一个线程池。一、我们回顾一下在Java线程池的使用与分析里讲到...原创 2019-10-24 11:26:10 · 1072 阅读 · 0 评论 -
Java线程池的使用与分析
Java线程池的使用与分析前言在Java中,我们可以利用多线程来最大化地压榨CPU多核计算的能力。但是,线程本身是把双刃剑,我们需要知道它的利弊,才能在实际系统中游刃有余地运用。一、基本概念:1、线程池,本质上是一种对象池,用于管理线程资源。2、在任务执行前,需要从线程池中拿出线程来执行。3、在任务执行完成之后,需要把线程放回线程池。4、通过线程的这种反复利用机制,可以有效...转载 2019-10-23 15:53:11 · 209 阅读 · 0 评论 -
Synchronized与ReentrantLock 有啥区别
Synchronized与ReentrantLock 有啥区别相似点: 这两种同步方式有很多相似之处,它们都是加锁方式同步,而且都是阻塞式的同步,也就是说当如果一个线程获得了对象锁,进入了同步块,其他访问该同步块的线程都必须阻塞在同步块外面等待,而进行线程阻塞和唤醒的代价是比较高的(操作系统需要在用户态与内核态之间来回切换,代价很高,不过可以通过对锁优化进行改善)。不同点:...转载 2019-10-21 18:00:12 · 183 阅读 · 0 评论 -
java设计模式------适配器模式
java设计模式---->适配器模式设计模式两大原则:一、找出应用中变化之处,把它们独立,不要和那些不需要变化的代码混在一起二、面向接口编程而不是面向具体实现这个是重点,请划线标注,考试要考: 代码也来源于生活...现实生活中的适配器本文讨论适配器模式。适配器模式是23中设计模式之一,它的主要作用是在新接口和老接口之间进行适配。它非常像我们出国旅行时带...转载 2019-10-17 13:57:18 · 269 阅读 · 0 评论 -
图像处理之混合空间增强——(Java:拉普拉斯锐化、Sobel边缘检测、均值滤波、伽马变换)
相信看过冈萨雷斯第三版数字图像处理的童鞋都知道,里面涉及到了很多的基础图像处理的算法,今天,就专门借用其中一个混合空间增强的案例,来将常见的几种图像处理算法集合起来,看能发生什么样的化学反应 首先,通过一张图来看下,我们即将需要完成的工作目标 同时,我们也借用书中的人体全身骨骼图像来进行模拟实现这些算法,这样,我们可以通过和书中展示的效果来评判我们实现的算法是否正...转载 2019-07-09 10:25:07 · 946 阅读 · 0 评论 -
java中 使用ImageMagick处理图片(对图片处理要求比较高的解决方案)
ImageMagick简介、GraphicsMagick、命令行使用示例博客分类: 图像处理技术ImageMagickGraphicsMagick图片处理 ImageMagick资料----------------------------------------------------------------------------Image转载 2014-09-29 15:44:05 · 7217 阅读 · 3 评论 -
理解 Thread.Sleep 函数
java线程获取结果Callable、Future、FutureTask java自定义线程池ThreadPoolExecutor我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间。那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题:假设现在是 2008-4-7 12:00:00.000,如果我调用一下 Thread.Sleep(1000) ,在 2...转载 2015-04-30 15:21:25 · 663 阅读 · 0 评论 -
java学习有关资料
一个 spring3 MVC 的例子,希望能对刚接触spring的朋友有所帮助。该流程属于大型项目的流程,涉及的知识比较希望大家耐心学习。 项目开发流程详解:http://zz563143188.iteye.com/blog/1825168收集五年的开发资料及源码下载地址: http://pan.baidu.com/share/link?shareid=3739316113&uk转载 2014-02-12 12:14:14 · 1096 阅读 · 0 评论 -
Java Web 中 过滤器与拦截器的区别
说明:过滤器,是在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的 action进行业务逻辑,比如过滤掉非法url(不是login.do的地址请求,如果用户没有登陆都过滤掉),或者在传入servlet或者 struts的action前统一设置字符集,或者去除掉一些非法字符拦截器,是在面向切面编程转载 2013-12-25 18:27:59 · 672 阅读 · 0 评论