自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

经验分享

经验分享

  • 博客(55)
  • 资源 (2)
  • 收藏
  • 关注

原创 验证码倒计时(js实现)

1.刷新页面时倒计时不会消失,存本地cookie2.不会因为多次页面刷新导致倒计时疯狂累加。

2023-03-25 17:16:12 898 1

原创 手机验证发送及其验证(基于springboot+redis)保姆级

在Java开发中,发送手机验证码时需要考虑以下几个问题:

2023-03-21 23:41:33 1672 1

原创 数据库三大范式和个人看法

可以允许表中一些字段的传递依赖,造成数据冗余 ,这样在一些查询query的情况下,可以不用频繁的联表操作,提高查询效率,典型的空间换时间

2023-03-01 01:38:00 173

原创 IO流-->File篇

【代码】IO流-->File篇。

2022-11-12 16:32:59 154

原创 MySQL基础学习二( DML DQL DCL)

MySQL基础学习二( DML DQL DCL)

2022-11-06 18:06:34 97

原创 MySQL基础学习一(DDL 数据库操作和数据类型)

MySQL基础学习一(DDL数据库操作和数据类型)

2022-11-05 18:36:31 78

原创 Redis基础操作(有图-->String)

redis基础操作--》String

2022-10-14 13:32:55 186

原创 jvm相关知识点(一)

jvm相关知识点(一)

2022-10-08 22:49:47 443

原创 ES6新特性

ES6新特性

2022-07-24 21:16:15 886

原创 HTTP协议

HTTP协议

2022-07-10 12:51:05 596

原创 JavaScript

js

2022-07-07 22:44:41 1170

原创 HTML项目用到标签总结

html标签

2022-07-07 17:18:35 433

原创 数据库连接池--Druid(德鲁伊)

Druid

2022-07-05 17:05:11 1322

原创 JDBC入门和API详解

JDBC入门和API详解

2022-07-05 16:27:33 419

原创 会话跟踪技术(Cookie,Session)

Cookie和Session

2022-07-04 21:04:31 451

原创 Java泛型进阶

自定义泛型类概述定义类的同时定义了泛型的类就是泛型类格式泛型类的格式:修饰符 class 类名<泛型变量> {}范例:public class Test{}自定义泛型方法概述定义方法时同时定义了泛型的方法就是泛型方法格式泛型方法的格式:**修饰符 <泛型变量> 方法返回值 方法名称(形参列表){} **范例: public void test(T t){}作用方法中可以使用泛型接收一切实际类型的参数,方法更具备通用性自定义泛型接口概念使用了泛型定

2022-05-18 20:47:19 414

原创 集合的并发修改异常问题

当我们从集合中找出某个元素并删除的时候可能出现一种并发修改异常问题。1.迭代器遍历集合且直接用集合删除元素的时候可能出现。出现问题是因为删除第一个元素的时候,元素会自动向前补位,会漏删用迭代器去删除,内部会自动– ArrayList<String> list = new ArrayList<>(); list.add("西瓜"); list.add("Java"); list.add("Java"); list.

2022-05-09 15:01:14 575

原创 ArrayList,LinkedList集合底层原理

ArrayList集合底层原理ArrayList底层是基于数组实现的:根据索引定位元素快,增删需要做元素的移位操作第一次创建集合并添加第一个元素的时候,在底层创建一个默认长度为10的数组每添加一个元素,size就会向后移,指向下一个要添加元素的位置当size指向索引10的位置时候,就会自动1.5倍扩容,扩容到15,等LinkedList集合底层原理特点底层数据结构是双链表,查询慢,首尾操作的速度是极快的,所以多了很多首尾操作的特有API。特有功能代码演示 //栈 Linke

2022-05-09 14:32:42 669

原创 常见数据结构

数据结构概述数据结构是计算机底层存储,组织数据的方式,是指数据相互之间是以什么方式排列在一起的通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率栈后进先出,先进后出手枪弹架先压入的子弹后打出队列先进先出,后进后出去银行取钱取号,按顺序叫号数组查询速度快:查询数据通过地址值和索引定位,查询任意数据耗时相同(元素在内存中是连续存储的)删除效率低添加效率低链表链表在元素是在内存中不连续存储的,每个元素节点包含数据值和下一个元素的地址链表中的元素是游离存储的,

2022-05-06 20:56:48 405

原创 Collection集合和数组补充

数组数组和集合都是容器数组定义完成并启动后,类型确定,长度固定,在进行增删数据操作的时候,数组是不太合适的,增删数据都需要放弃原有数组或位移数组适合的场景当业务数据的个数是固定的,且都是同一批数据类型的时候,可以采用定义数组存储集合集合是java中存储对象数据的一种容器特点集合的大小不固定,启动后可以动态变化,类型也可以选择不固定,集合更像气球集合非常适合做元素的增删操作注意: 集合中只能存储引用类型数据,如果要存储基本类型数据可以选用包装类集合类体系结构Collection

2022-05-06 19:34:44 574

原创 Lambda表达式

Lambda概述简化匿名内部类的代码方法(JDK8)Lambda表达式只能简化函数式接口的匿名内部类的写法形式函数式接口首先必须是接口,其次接口中有且仅有一个抽象方法的形式通常我们会在接口上加上一个@FunctionlInterface注解,标记该接口必须是满足函数式接口Lambda表达式的简化格式(匿名内部类被重写方法的形参列表)->{ 被重写方法的方法体代码}//->是语法形式,无实际含义代码展示 public static void main(Strin

2022-04-24 17:28:55 413

原创 Java二分查找

二分查找必须是有序数组才可以查找哦思路为什么说二分查找的效率最高呢?因为每一次选择数字,无论偏 大还是偏小,都可以让剩下的选择范围缩小一半。所以我们先定义这个数组的开头下标left=0;然后在定义这个数组结尾的下标为right=arr.length-1;由于我们不知道要进行多少次循环,这里我们使用while循环,当left<=right我们结束循环我们需要定义一个中间数,不要纠结这个中的位置,int mid = (left+right)/2,这里我们要考虑一个问题,可能会溢出,如果数组

2022-04-24 16:33:54 397

原创 SpringMVC配置和基本原理

配置1.创建WEB工程,引入开发的jar包2.输入创建的项目名称3.配置自己的Maven4.打开方式创建为war包5.导入坐标依赖<!--版本锁定--><properties> <spring.version>5.0.2.RELEASE</spring.version></properties><dependencies> <dependency> <groupId>o

2022-04-21 20:54:58 663

原创 Java八大排序之选择排序

选择排序的思想每轮选择当前为啥,开始找出后面的较小值与该位置交换选择排序的关键确定总共需要选择几轮:数组的长度-1控制每轮从以前位置为基准,与后面元素选择几次时间空间复杂度时间复杂度:O(n²)空间复杂度:O(1)动态图演示代码演示 public static void main(String[] args) { int[] arr = {8,3,7,5,1,2}; XZPX(arr); } public static void

2022-04-21 18:40:47 939

原创 Arrays

Arrays类数组操作工具类,专门用于操作数组元素的Arrays类的常用APItoString返回数组内容int[] arr = {7,2,3,1,5,6};System.out.println(arr) //打印地址System.out.println(Arrays.toString(arr)) //打印数组内容sort进行升序排序int[] arr = {7,2,3,1,5,6};Arrays.sort(arr);System.out.println(Arrays

2022-04-21 17:03:43 706

原创 正则表达式

2022-04-21 00:45:02 759

原创 Java经典题总结

来源:牛客网1.下列关于序列化和反序列化描述正确的是:A,BA.序列化是将数据转为n个 byte序列的过程B.反序列化是将n个 byte转换为数据的过程C.将类型int转换为4 byte是反序列化过程D.将8个字节转换为long类型的数据为序列化过程解析:老哥的分析通俗易懂,C和D反了2.在Java中,关于HashMap类的描述,以下错误的是(A)?A.HashMap能够保证其中元素的顺序B.HashMap允许将null用作值C.HashMap允许将null用作键D.

2022-04-20 21:54:12 1636

原创 Java包装类

Java为了实现一切皆对象,为8种基本类型提供了对应的引用类型集合和泛型只能支持包装类,不支持基本数据类型自动装箱和自动拆箱自动装箱:基本类型的数据和变量可以直接赋值给包装类型的变量自动拆箱:包装类型的变量可以直接赋值给基本数据类型的变量包装类的特有功能默认是null可以把字符串类型的数字转换成基本类型必须符合数字类型,且数字类型对应String a = 101;int a1 = Integer.parseInt(a);//101String b = 12.1;double

2022-04-19 21:21:02 1179

原创 时间日期API

Date类Date类的对象在Java中代表的是当前所在系统的此刻日期时间Date d = new Date(); d就是此刻时间long time = d.getTime() time就是当前的毫秒值**Dtae d = new Dtae(毫秒值)**恢复成日期对象d.setTime(毫秒数) 恢复成日期对象SimpleDateFormatDate d = new Date();SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月d

2022-04-19 19:02:55 2051

原创 常用API

Object类的作用一个类要么默认继承了Object类,要么间接继承了Object类,Object类是Java中的老祖宗类Object类的方法是一切子类都可以直接使用的toString方法默认是打印当前对象的地址让子类重写,以便返回子类的内容快捷键 Alt+Insertequals方法默认是与另一个对象比较地址是否一样让子类重写,一边比较两个子类对象的内容是否相同快捷键 Alt+InsertObjects类Objects类与Object还是继承关系,Objects类是

2022-04-18 22:31:23 1156

原创 中间件及其常见实战案例

后续会进行补充,具体会分成一个栏目具体发,这个就相当于一个目录

2022-04-18 19:54:23 1811

原创 final和abstract的关系、抽象类的特征

final和abstract的关系互斥关系abstract定义的抽象类作为模板让子类继承,final定义的类不能被基础抽象方法定义通用功能让子类重写,final定义的方法子类不能重写抽象类的特征1.得到了抽象方法,但是失去了创建对象的能力问题:抽象类为什么不能创建对象???对象是什么?对象是具体的东西,创建对象也就是类的实例化,把一个模板形象化表述出来,因为抽象类自己都不知道自己是什么,所以就没发new出来一个对象,抽象类没说具体的逻辑,想到于我要做模板的事务,抽象类自己也弄不清楚,所以就没

2022-04-15 21:59:03 1366

原创 final

final的作用final关键字的意思是最终,可以修饰(方法,变量,类)修饰类:表示该类是最终类,不能被继承修饰方法:白哦是该方法是最终方法,不能被重写修饰变量:表示该变量第一次赋值后,不能再被复制(有且仅能被复制一次)final修饰变量的注意final修饰的变量是基本类型时,变量存储的数据值不能发生改变final修饰的变量是引用类型时:那么变量存储的地址值不能发生改变,但是地址指向的对象内容是可以改变的图文解释:当final修饰引用变量时,无法改变他的地址当我们改变他里面的数据

2022-04-13 14:56:13 1265

原创 Java类型转换

自动类型转换和强制类型转换

2022-03-25 16:23:14 1272

原创 Redis安装和图形化客户端的安装

认识Redis安装Redis及其开机自动启动redis图形化客户端的安装

2022-03-25 12:32:52 2784 1

原创 windows和Linux常用命令

windows和Linux系统的常用命令

2022-03-24 09:43:13 5393 1

原创 什么是dll文件且解决dll文件丢失

dll文件丢失等问题丢失修复,亲测有效

2022-03-24 08:59:37 1638

原创 Java 数组

Java数组数组的创建两种方法:(这里举例为int数据类型)int [] arr = {1,2,3,4,5}; //第一种int [] brr = new int[5]; //第二种两种方法的长度都是5,数组的下标也都是arr(brr)[0] - arr(brr)[4]数组排序Arrays.sort例子如下: int [] arr = {1,8,5,6,9,7}; Arrays.sort(arr); System.out.println (Arrays.toString

2022-02-08 21:17:37 1287

原创 Java大数值

前言1.Biglnteger 和 BigDecimal 这两个类可以处理包含任意长度数字序列的数值。2.Biglnteger 类实现了任意精度的整数运算, BigDecimal 实现了任意精度的浮点数运算。代码实现 //BigInteger x1 = BigInteger.valueOf(2000000000); //大数值,这种写法有范围,大约在20亿左右 BigInteger x1 = new BigInteger("2000000"); //这种写法没限制 BigInteg

2022-02-08 18:45:52 1407

原创 文档注释。

使用文档注释时还可以使用 javadoc 标记,生成更详细的文档信息: @author 标明开发该类模块的作者 @version 标明该类模块的版本 @see 参考转向,也就是相关主题 @param 对方法中某参数的说明 @return 对方法返回值的说明 @exception 对方法可能抛出的异常进行说明...

2022-01-16 16:32:36 1231

redis安装包和redis图形化工具

redis安装包和redis图形化客户端2022/3月版本

2022-03-24

dll文件丢失等问题修复

1.运行第一个,查看是否解决问题 2.为解决下载第二个,百分比解决win10

2022-03-24

空空如也

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

TA关注的人

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