自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小菜椒的博客

它有点懒,什么都没有留下

  • 博客(34)
  • 收藏
  • 关注

原创 MybatisPlus之QueryWrapper、LambdaQueryWrapper以及LambdaQueryChainWrapper用法

MybatisPlus之QueryWrapper、LambdaQueryWrapper以及LambdaQueryChainWrapper用法

2023-03-01 16:51:09 1359

原创 @Valid与@Validated区别及使用场景

@Valid与@Validated区别及适用场景

2023-03-01 16:47:25 380

原创 count(*) 和 count(列名)的区别

count(*) 和 count(列名)的区别

2023-03-01 16:43:09 634

原创 HTTP常见状态码

http常见状态码

2023-03-01 16:38:52 175

原创 XML中if标签无法解析

xml中if标签无法解析

2023-03-01 16:35:22 609

原创 页面多次点击导致重复添加

重复点击、事务可重复读

2023-03-01 16:27:53 368

原创 IDEA使用技巧:下划线转驼峰及大小写转换插件和快捷键

IntelliJ IDEA下划线转驼峰及大小写转换插件和快捷键

2023-03-01 16:20:07 2521

原创 net.sf.jsqlparser.parser.ParseException:+MyBatis-Plus写SQL时,like和like concat()的区别?

net.sf.jsqlparser.parser.ParseException:+MyBatis-Plus在写SQL时,like和like concat()的区别

2022-12-30 16:24:02 645

原创 Cannot find local variable ‘httpResponse‘

Cannot find local variable 'httpResponse'

2022-11-04 10:27:41 2258

原创 MyBatis传入参数为数组、list的写法

MyBatis传入参数为数组、list

2022-10-31 14:14:08 6820 1

原创 springboot实体类中增加数据库中没有的字段用法

springboot实体类中增加数据库中没有的字段用法

2022-10-31 14:08:49 4084

原创 java.lang.reflect.InvocationTargetException

java.lang.reflect.InvocationTargetException

2022-10-31 14:07:21 2622

原创 linux启动java项目-nohup java -jar

linux命令重启java项目

2022-10-31 14:05:48 5351

原创 @param(”xxxx“)

@param(”xxxx“)注解使用

2022-10-31 14:02:11 346

原创 依赖倒转原则

设计模式六大原则-依赖倒转原则、里氏替换原则

2022-10-19 16:18:41 170

原创 设计模式——开闭原则

设计模式六大原则-开闭原则

2022-10-19 15:31:51 90

原创 单一职责原则

设计模式六大原则-单一职责原则

2022-10-19 14:53:25 806

原创 Sa-Token+redis实现账号封禁

账号正常输入 密码持续输入错误,为了防止系统会遭遇暴力破解,设置在5次持续错误后,账号被上锁5分钟,账号封禁

2022-10-17 09:31:19 1679

原创 rebase和merge的区别及使用场景

git rebase和merge的区别及使用场景

2022-09-27 09:28:12 7697 1

原创 Maven更改settings.xml配置文件

maven修改setting文件

2022-09-22 21:58:44 3024

原创 Git ssh生成秘钥

Git ssh生成密钥

2022-09-22 21:57:15 808

原创 初始化顺序

static

2022-06-04 23:50:05 305

原创 System.currentTimeMillis() 和new Date().getTime()区别

System.currentTimeMillis() 和new Date().getTime()区别打开java.util.Date的源码:public Date() { this(System.currentTimeMillis());}从源码可以看出,new Date()其实就是调用System.currentTimeMillis(),new Date()对象也会有些许的性能消耗,如果仅仅是需要或者毫秒数,那么完全可以使System.currentTimeMillis()去代替new Da

2021-12-27 14:20:58 599

原创 spring 注解@NotNull等使用方法

Lombok判断注解怎么使用,总结下来为@NotEmpty 用在集合类上@NotBlank 用在String上@NotNull 用在基本类型上(@NotNull(message = “邮箱不可为空”))最后最重要的是,在接口参数前加注解’@Valid’ 否则不会验证!spring 注解验证@NotNull等使用方法@Null 被注释的元素必须为null@NotNull 被注释的元素不能为null@AssertTrue 被注释的元素必须为true@AssertFalse 被注释的元素

2021-12-27 14:18:24 2679

原创 Throwable异常

Throwable异常1,异常的分类:2.处理异常的方法:1.throw抛出异常,2.try-catch处理异常throw:举例:test方法是运行时异常,运行时异常可以处理也可以不处理,抛出RuntimeException异常后,main方法调用也需要抛出异常,main方法可以抛出RuntimeException,Exception,Throwable,main方法抛出的异常必须大于等于运行时异常,但若是test方法抛出Exception异常,编译时异常必须进行处理,main方法需要抛出

2021-09-16 10:40:45 96

原创 redis 常用数据类型

redis 常用数据类型(string,list,set,hash,zset)1.字符串stringstring 数据结构是简单的 key-value 类型。构建了一种简单动态字符串SDS,Redis 的 SDS 不光可以保存文本数据还可以保存二进制数据,并且获取字符串长度复杂度为 O(1),Redis 的 SDS API 是安全的,不会造成缓冲区溢出。常用命令:set【添加键值对】,get【获取键值对】strlen【获取值的长度】append【数据追加到原值的末尾】dect【key中储存

2021-09-15 21:45:27 93

原创 公平锁和非公平锁

公平锁和非公平锁公平锁―是指多个线程按照申请锁的顺序来获取锁,类似排队打饭,先来后到。非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁在高并发的情况下,有可能会造成优先级反转或者饥饿现象并发包中ReentrantLock的创建可以指定构造函数的boolean类型来得到公平锁或非公平锁,默认是非公平锁公平锁和非公平锁的区别:1.公平锁,就是很公平,在并发环境中,每个线程在获取锁时会先查看此锁维护的等待队列,如果为空,或者当前线程是等待队列的第一个

2021-09-15 09:11:00 3965

原创 HashMap的底层实现原理

一、HashMap的底层实现原理?(jdk7):HashMap map = new HashMap():在实例化以后,底层创建了长度是16的一维数组Entry[ ] table。…可能已经执行过多次put. . .map.put( key1, value1):(1)首先,调用key1所在类的hashCode(),计算key1哈希值,此哈希值经过某种算法计算以后,得到在Entry数组中的存放位置。如果此位置上的数据为空,此时的key1-value1添加成功。----情况1(2)如果此位置上的数据

2021-09-09 23:01:53 96

原创 List集合常用方法及list.remove()

List集合常用方法1.void add(int index,object ele):在index位置插入ele元素2.boolean addAll(int index,collection eles):从index位置开始将eles中的所有元素添加进来3.object get(int index):获取指定index位置的元素4.int indexof(0bject obj):返回obj在集合中首次出现的位置5.int lastIndexof(object obj):返回obj在当前集合中末次出

2021-09-09 00:00:38 151

原创 ArrayList、LinkedList、 Vector三者的异同?

面试题: ArrayList、LinkedList、 Vector三者的异同?collection接口:单列集合,用来存储一个一个的对象List接口:存储有序的、可重复的数据。–>“动态数组,替换原有的数组同:三个类都实现了List接口,存储数据的特点相同:存储有序的、可重复的数据不同:1. ArrayList:作为List接口的主要实现类;线程不安全的,效率高;底层使用Object[] eLementData存储2. LinkedList:对于频繁的插入、删除操作,使用此类效率比Ar

2021-09-08 23:45:50 149

原创 垃圾收集器与内存分配策略

1、判断对象是否死亡垃圾收集器在对堆进行回收前,第一件事就是确定这些对象之间哪些还“存活”着。1.1引用计数法给对象添加一个引用计时器,每当有一个地方引用它,计数器就加1;当引用失效时,计数器就减1,任何时刻计数器为0的对象就是不可能在被使用的。但是主流的虚拟机都没有选用这种方法来管理内存,因为他不能解决对象之间循环引用引起的问题。例:对象objA和对象objB都有字段instance,赋指令objA.instance = objB 以及objB.instance = objA,在之后把这两个对象

2021-08-18 23:39:27 120

转载 java中的代理模式

java中的代理模式:定义:给目标对象提供一个代理对象,并且由代理对象控制对目标对象的引用目的:①:通过代理对象的方式间接的访问目标对象,防止直接访问目标对象给系统带来不必要的复杂性②:通过代理业务对原有业务进行增强java当中有三种方式来创建代理对象:静态代理,基于jdk(接口)的动态代理,基于CGLLIB(父类)的动态代理。静态代理: 在代码的编译阶段植入Pointcut的内容,性能好,需要额外的编译动态代理:在代码执行阶段,在内存中截获对象,动态的插入Pointcut的内容,不需要额外的编

2021-08-13 23:25:50 85

原创 Java值传递说明方法参数

一、基本概念参数类型:形参:方法被调用时需要传递进来的参数,例如:function(int a)中的a,他只有func被调用期间a才有意义,也就是被分配内存空间,在方法function方法被执行完后,a就会被销毁释放内存空间,也就不存在了实参:方法被调用时传递进来的实际值,他在方法被调用前就已经被初始化,并且在方法被调用时传入。值传递和引用传递值传递:在方法被调用时,实参通过把他的内容副本传入方法内部,此时形参接收的内容是实参的一个拷贝,因此在方法内对实参的任何操作,都仅仅是对这个内容的副本进

2021-08-12 00:08:30 245 1

原创 包装类+128陷阱

一.在面向对象中,基本数据类型不是对象,涉及到类型之间的转化,数据类型之间的基本操作,工作量大,所以java针对每一个基本数据类型都设计了一个包装类。二,自动拆装箱:1.装箱:把基本类型数据转成对应的包装类对象。Integer i = Integer.value(13);2.拆箱:把包装类对象转成对应的基本数据类型数据。int value = i.intValue();三,举例:1.integer与int作比较结果:true true原因:包装器类型自动拆箱成int类型..

2021-08-11 22:52:48 93

空空如也

空空如也

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

TA关注的人

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