自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (2)
  • 收藏
  • 关注

原创 Docker安装kafka简单步骤

docker安装kafka

2022-12-05 22:30:18 8597 1

转载 MySQL8免安装版安装教程

MySQL8安装教程

2022-11-26 18:34:50 548

原创 知识·集锦

Java初级注释积累

2022-05-18 10:32:04 455

原创 Java基础

1.为啥JDKPorxy只能代理接口? 1.1)为什么JDK代理要基于接口而不是类实现 由于jdk在产生代理对象时会默认继承Porxy道理对象并实现xxSservice接口,Java中仅支持单继承所以jdk动态代理只能通过接口实现 1.2)JDK代理中,在目标方法的内部调用另外一个方法目标方法,另一个方法执行时,为什么不经过代理对象。 内部调用方法相当于是this调用,this指代当前对象并非代理对象,所以...

2022-05-07 10:45:38 370

原创 fastjson2常用方法

FASTJSON2.0是FASTJSON项目的重要升级,目标是为下一个十年提供一个高性能的JSON库,同一套API支持JSON/JSONB两种协议,JSONPath是一等公民,支持全量解析和部分解析,支持Java服务端、客户端Android、大数据场景。 FASJTONS2代码 https://github.com/alibaba/fastjson2/releases/tag/2.0.1 JSONB格式文档 https://github.com/alibaba/fastjson2/wiki.

2022-04-26 18:56:36 9158

原创 @NotBlank、@NotNull、@NotEmpty之间的关系

@NotNull:不能为null,但可以是空字符串@NotEmpty:不能为null,并且长度必须大于0@NotBlank:只适用于字符串,不能为null,使用trim()后,长度大于0

2022-03-06 08:41:37 305

原创 MySQL索引

1.什么是索引?索引就是存储引擎为了提高数据的访问效率提供的一种数据结构;是对数据库表中一个或多个列的值排序的结构。2.索引的优势索引能够加快数据库的检索速度 确保每一行数据的唯一性 可以在查询的过程中使用隐藏优化器一高系统的性能3. 索引的缺点索引会降低插入、删除、修改等人物的速度 索引需要空间存储,也需要定期维护,每当有记录在表中增减或索引列被修改时,索引本身也会被修改。这意味着每条记录的INSERT,DELETE,UPDATE将为此多付出4,5次的磁盘I/O. 索引不但会使得

2022-02-20 17:44:28 490

原创 解决Hash冲突的两种策略

什么是Hash冲突?由于HashMap是数组+链表的方式存储数据,内部封装了一个Entry数组,数组里面的每个单元又是一个链表。即是数组就会有长度。对于数组来说往里面放数据就是占据数组下标对应的空间。然而往hashMap中存放数据并不是直接放进去的,而是先通过hash计算数组下标,最后根据计算出来的下标位置将数据存放到数组里。hash值是有可能重复的,这样使用相同的下标就会出现冲突。解决冲突的两种方式:1.开放地址法2.链地址法两者的区别:1.开放地址法:容易产生堆积问.

2022-02-11 18:59:43 1477

转载 @SuppressWarnings

简介:该注解源自java.lang.SuppressWarnings 是J2SE5.0中标准的Annotation之一。使用范围:类、方法、属性、参数、构造方法、局部变量。作用:告诉编译器忽略指定的警告,避免在编译完成后出现警告信息。使用:@SuppressWarnings ("")@SuppressWarnings ({})@SuppressWarnings (value={})根据官方文档描述:value-将由编译器在注释的元素中取消显示的警告集。允许使用重复的名称,忽略

2022-02-10 17:02:19 125

原创 Redis与jedis的区别

Redis与Spring的整合一般分为spring-data-redis和jedis整合,两者的区别在于:1.引入的依赖不同spring-data-redis引入的是<dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-redis</artifactId></dependency>jedis引入的是:&

2022-02-06 17:09:58 9528

原创 去重的六种方式

Java去重

2022-02-04 09:44:18 2853

原创 Redis存储结构体信息,选hash还是String

Redis的Hash与String的结构一、StringString与Hash都是Redis的一种数据结构。String常用来缓存用户信息,通常将用户信息结构体用json序列化成字符串,再将该字符串存入redis中。Redis的字符串是动态字符串,可以修改,内部结构类似于Java的ArrayList,采用预分配冗余空间的方式减少内存的频繁分配。如图所示,capacity为内部当前分配的空间,一般高于实际字符串长度len。使用的指令有set, get, mset, mget等补二、

2022-02-03 13:43:36 3718

转载 Java泛型知识点

java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一 - little fat - 博客园

2022-01-26 16:31:31 64

原创 idea常用插件

1.反编译插件 IdeaJad2.高亮提示 HighlightBracketPair3.翻译插件 translation plugin4.Lombok5.Free Mybatis plugin6.MyBatis Log Plugin7.MyBatisX8.GsonFormat9.RestfulToolkit10.CodeGlance11.Maven Helper12.Jrebel13. GenerateAllSetter 一键生成所有s

2022-01-07 11:25:55 324

原创 配置Git-SSH公钥

配置git公钥

2022-01-07 11:01:18 924

转载 SQL语言的四大类

sql语言分为四大类,分别是数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL。关于mysql中的DDL,DML,DQL和DCL - tonbby - 博客园

2021-12-13 10:09:32 952

原创 spring中Model的作用

1)后台要从控制层直接返回前端所需的数据返回HTML页面:1)添加spring-boot-stater-freemarker 返回HTML模板2)需到spring配置文件中配置suffix/template-loder-path(页面路径)

2021-12-05 18:52:48 631

原创 跟换jdk版本步骤

1.项目中设置:我这里使用的jdk15idea---->project structure----->Project---->Project SDK---->选择jdk版本号---->Project language level---->15-Text blocks2.maven中配置settings.xml文件在该文件中找到jdk部分更改其版本号3.在Windows下配置jdk路径右键属性---->高级设置---->环境变..

2021-10-30 16:45:39 1343

原创 注册表配置jdk版本

如果在原有的jdk基础上当前根据项目要求更换jdk版本时,若只更改path、Java_Home时,你会发现在使用cmd输入Java-version时发现版本还是原来的旧版本,这个时候就需要去注册表里更改变量值。

2021-10-30 14:47:55 497

原创 什么是消息中间件、消息队列、消息代理、MQTT

1.中间件首先先来说一下消息中间件,呢么什么是中间件呢? 我的理解就是帮助应用程序与其他的应用程序、硬件、操作系统、网络、进行交互或通信的软件。 目的就是为了将业务与底层逻辑进行分离。 符合中间件的范畴还是比较广的,比如说Redis、Zookeeper、Memcached等,其实中间件是相对于架构体系内的,他不涉及具体的业务逻辑也不涉及底层的硬件逻辑,用于用户数据交换和管理,相当于找房子/租房子找中介一样,就是起到了中介的作用。呢么为什么要使用中...

2021-10-16 12:02:27 1251

原创 Zuul和Gateway的区别

1.spring-cloud-Gateway:由于目前spring-cloud中引用的还是zuul1.x版本,这个版本是基于过滤器的,是IO式阻塞,同时也不支持长连接,2.x在此基础上性能得到了提升,但是spring-cloud基本上放弃了zuul2.x,这就有了现在的Spring Cloud Gateway。这里可以看到,最新的springcloud中的zuul还是1.3.1版本,并且官网已经声明不在维护zuul2.API网关API网关是一个服务器,是...

2021-10-15 10:31:04 2016

原创 使用thyme leaf模板CRUD时遇到的坑

1.如果使用了spring提供的@Cacheable注解,呢么控制层(controller)再使用重定向(redirect)时会造成重定向失效的假象,其实查询的一直是缓存中的数据,导致后期更新的数据没有加载、页面没有变化。2.如果controller层使用@RestController,呢么程序启动后将不会返回HTML/jsp页面内容,返回的将是return后面的字符串。(@RestController不会解析jsp/或HTML页面,可以使用ModelAndView实现)3.如果后端使用@Reque

2021-10-12 14:45:00 116

原创 编译期常量和运行期常量

String s="a"+"b"+"c";首先看一下这道题创建几个对象?答案是一个对象其实如果查看Java源码和反编译后的字节码文件,就可以用直观地看出,只创建了一个String对象。呢为什么源文件中的字符串拼操作到了字节码文件就消失了呢?这就要提到编译期的常量折叠技术了: 这是因为在编译期间应用了编译器优化中的一种常量折叠技术,会将编译期常量的加减乘除运算过程在编译过程中折叠。编译器通过语法分析,将常量表达式计算求求值,用计算出来的值替换表达式,从而在运行期间节省处...

2021-10-07 16:20:19 438

原创 JAVA-FAQ文档

1.java底层是如何运行的?答:先通过javac将Java源文件编译成字节码(.class文件)--JVM加载并运行.class文件(JVM加载时需要调用lib库来编译.class文件)2.为什么Java中只能单一继承?答:Java中类不能多继承类是为了安全。因为无论是抽象类还是非抽象类都包含非抽象的方法(非抽象类也可能没有),当类可以多继承类时,被继承的不同的父类可能会有同名同参的方法,如果子类也没有重写这个同名同参的方法,则在子类的实例调用这个方法的时候就会...

2021-10-06 16:35:56 205

原创 Spring-Aop简单步骤

1.Spring Aop是什么?AOP(Aspect Oriented Programming面向切面编程),是一种设计思想,它是面向编程(oop)的一种完善,通过编译期或运行期动态代理的方式为目标对象进行业务功能的增强,也就是为目标对象进行功能的扩展,如果使用传统的方式进行功能扩展的话有两种方式:方案一:基于继承方式实现其功能,设计如下:** 假如有一个公告(通知)业务接口及实现: 如何在不改变源码的前提下对对象进行功能扩展pubic i...

2021-10-05 23:39:04 121

原创 Shiro初级探索

什么是Apache Shiro?Apache Shiro 是一个强大而灵活的开源安全框架,可以干净地处理身份验证、授权、企业会话管理和加密。shiro可以做的事:对用户进行身份验证以验证其身份 对用户执行访问控制 : 确定是否为用户分配了特定的安全角色 确定是否允许用户做某事在任何环境中使用会话 API,即使没有 Web 或 EJB 容器 在身份验证、访问控制或会话生命周期期间对事件做出反应。 聚合 1 个或多个用户安全数据的数据源,并将其全部呈现为单...

2021-10-04 23:23:44 107

转载 Java中Native的作用

一、认识native初次是在java.lang.Object源码中的hashCode方法中遇到:public native int hashCode();Java平台有个用户和本地C代码进行互操作的API,称为Java Native Interface (Java本地接口)。二、Java调用c的“hello,JIN”我们按照下面的步骤进行:1.创建一个Java类,里面包含着一个 native 的方法和加载库的方法 loadLibrary。HelloNati...

2021-10-01 18:30:07 1259

原创 JVM、JRE、JDK、Javac的关系

JVM、JRE、JDK、Javac的关系一、javac .java是Java源文件的后缀,编写的代码要写在.Java中。 Javac是一个编译器,用来读取Java源文件,并生成.class字节码文件。二、JVM java虚拟机是用来加载并运行.class字节码文件的,它是整个java实现跨平台的最核心的部分,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系...

2021-10-01 12:20:25 816

spring-cloud项目创建.pdf

spring cloud项目入门搭建

2021-10-05

SSM知识点总结.md

三大框架入门总结

2021-10-05

空空如也

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

TA关注的人

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