自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 苍穹外卖——Day1

git忽略文件。

2025-04-08 09:04:07 163

原创 JAVA八股——Spring篇

面向切面编程,封装的可重用模块,称为”切面“,降低模块耦合度,提高系统可维护性。

2025-04-07 08:57:00 188

原创 八股——Mysql篇

表象:页面加载慢,接口反应时间长。

2025-03-25 11:26:57 472

原创 面试八股 —— Redis篇

和根据不同的业务提供对应的方案(1)延时双删避免脏数据,所以要删两次缓存,延迟双删(2) 分布式锁(3) 异步通知RDB —— Redis数据备份文件,数据快照内存记录磁盘——便于恢复。

2025-03-19 12:21:30 220

原创 开发规范 + Restful

接口文档:基本信息,请求方式,请求路径,数据格式。和传统的请求方式的区别,简介,规范,优雅。

2025-03-18 12:30:39 113

原创 Springboot项目文件配置

properties会出现大量重复,层次不清晰。把properties格式改成yml。注意数值前面必须要有空格。

2025-03-18 12:03:40 129

原创 XML映射配置

Mapper接口和XML映射配置二选一。简单的crud:Mapper。复杂的SQL:XML。

2025-03-17 16:03:19 66

原创 基于Mybatis的增删改查

和sql语句一样,就是需要在usermapper里面编写对应的方法。可以封装一个User user,然后new一个对象直接传入。提供占位符作为形参导入。

2025-03-17 15:27:23 166

原创 数据库连接池

springboot默认:追光者。

2025-03-17 14:09:57 204

原创 MyBatis

后端三层:Controller + Service + DAO。相当于MyBatis封装了所有的JDBC操作。编写测试用例执行sql语句。使用MyBatis流程。Mybatis初步配置。

2025-03-17 14:03:11 256

原创 开启Mysql!

优势: 防止SQL注入。

2025-03-15 14:04:11 102

原创 Lock锁+死锁

调用共享数据部分的代码。

2025-03-14 13:17:54 95

原创 同步——synchronized

线程在执行代码时候,cpu的执行权随时会被其他线程抢走。把操作共享数据的代码锁起来。锁对象一定要是唯一的。加static关键字。

2025-03-14 00:29:10 119

原创 异常——Exception

方法内出现异常直接抛出,交给调用者,然后继续执行调用者的代码,采取try catch。输出异常,然后停止,下面的语句不会继续执行。包裹快捷键:ctrl+alt+t。可以让程序继续执行,不会中断。2. 手动处理异常。

2025-03-13 11:45:34 103

原创 反射——Reflection(获取变量,方法,创建对象的方式)

利用反射创建对象3.获取成员变量getgetDeclaredField 获取所有的创建对象:set4.获取成员方法getMethod加s就是所有不加就是单个。

2025-03-13 10:59:10 221

原创 自定义线程池(参数)

核心线程在忙,队伍中已经排满了。临时线程会创建用于处理后面的任务。用开饭店来类比线程池的创建。什么时候创建临时线程?

2025-03-12 19:54:00 201

原创 线程(池)—— ExecutorService

线程的六种状态线程池线程池创建。

2025-03-12 19:33:01 177

原创 多线程三种实现方式

3. 实现Callable接口,重写call方法,创建FuterTask对象和Thread对象。1.继承Thread类,重写run方法,start启动(以示区分可以对不同线程命名)tips: getname时候要获取当前正在运行的线程。2. 实现Runable接口重写run方法。

2025-03-12 18:59:35 92

原创 HashMap + LinkedHashMap

put方法有覆盖功能,键值对,键是唯一的。

2025-03-12 18:05:37 164

原创 Map 双列集合和遍历方式

entry对象 1.2.3.

2025-03-12 17:40:03 182

原创 Stream流

终结方法就是用完之后不能调用其他方法了。distinct 元素去重。先更到这,太细了回头再看。单列ArrayList。Stream流中间方法。filter 链式编程。

2025-03-11 13:56:53 205

原创 集合进阶——set系列

HashSet里面如果是自定义对象,要重写hashcode,equals方法来去重。底层原理热盎然是哈希表,但是每个元素额外多了一个双链表机制来记录存储的顺序。hashCode,equals底层都是比较的地址值,我们需要的是属性值。HashSet首先获取哈希值,然后用equals获取内部属性值。底层原理:链表长度超过8,数组长度大于64,自动转换为红黑树。重写hashCode,相同对象输出相同的哈希值。底层用地址值进行比较,利用属性值计算哈希值。继承于Collection,比较对象的属性值而不是地址值。

2025-03-10 13:35:05 267

原创 集合进阶——数据结构

正常二叉树只能遍历寻找——> 二叉查找树/排序树/搜索树——>左右子树差异很大,也会降低效率——>平衡二叉树——>旋转效率太低——>红黑树。(自平衡的二叉查找树),是一种特殊的二叉查找树,但是不是平衡二叉树。3.任意结点到所有后代叶结点的简单路径,黑色结点数相同。——二叉查找树(二叉排序树/二叉搜索树)、二叉平衡树。就是先左后右的基础上,当前结点的前中后。链表(增删快,查询慢,都需从头找)默认添加的结点是红色——效率高。——>考虑到旋转机制的繁琐。1.根结点和叶结点都是黑。数组(查询快,增删慢)

2025-03-10 12:41:04 172

原创 * 集合进阶——泛型

没太学懂,回头再看看。

2025-03-10 11:02:04 126

原创 集合进阶——List方法和五种遍历

List继承了Collection。因为有索引,所以一些方法里面有索引。

2025-03-09 22:23:46 132

原创 集合进阶——Collection

tips:判定对象是否存在时候,需要重写equals方法。——>增强for遍历( 快捷键 coll.for )for遍历只适用于list系列,无序的set遍历不了。Collection的遍历方式。——> lambda 表达式。List和Set区别。

2025-03-09 22:07:40 145

原创 常用的API

System.currentTimeMillis()当前时间。System.exit(0) 停止。floor 向下取整。

2025-03-09 22:07:00 128

原创 接口——interface

3.定义PingpangSporter,BasketballSporter,PingpangCoach,BasketballCoach类继承。定义接口后要再public abstract void。定义抽象方法,然后在其他类里面实现implement。2.定义Sporter和Coach类继承Person。练习——写一个带抽象类和接口的标准javabean。定义一种规则,需要用的时候调用接口。4.定义说英语的接口抽象方法。5.在对应的子类里面实现接口。maybe是另一种多继承。1. 定义Person类。

2025-03-05 23:51:42 174

原创 权限修饰符+抽象类

抽象类(不能实例化)(抽象类一定有抽象方法)抽象方法子类必须强制重写。

2025-03-05 19:35:33 96

原创 包+final+static复习

static可以通过类名直接调用静态变量和静态方法。如果不加static就要先实例化再调用。在switch语句里面。

2025-03-04 11:32:16 141

原创 面向对象进阶——多态

一言蔽之,就是在继承的基础上,重写父类方法,达到高复用性。p不能调用子类特有功能,要使用必须强制转换,//编译左边,运行右边。t.name //编译左边,运行左边。java 三特性:封装,继承,多态。

2025-03-01 15:26:46 204

原创 继承——extends

Student,Teacher重复的类写在第三个类Person里面,提高复用性。java只支持单继承,不支持多继承,但可以多层继承A-B-C。封装:封装零散的数据,Student,Teacher。java里面所有类都直接或者间接继承object类。2.成员变量可以继承但是不能直接使用。

2025-02-28 15:08:03 99

原创 Static + 工具类

1.定义一Student javabean。使用场景:成员共享一个属性(学生的老师)

2025-02-27 15:05:47 124

原创 学生管理系统

list.get(i) 属于ArrayList里的一个对象。如果要获取属性值需要new一个Student来接受它。

2025-02-24 11:45:11 146

原创 集合——ArrayList

集合不能存储基础数据类型(int,float,double)list.set(1,”aaa“)改第二个元素。list.get(0)查第一个元素。数组:可以存基础+引用数据类型。list.size()长度。list.remove删。相对于数组的特性:1.list.add 增。

2025-02-21 16:25:51 139

原创 字符串练习

大致这样,后面需要再补吧,觉得学这么细没什么太大意义现在,不是刷题的时候。用数字0-9的ascii值,生成罗马表,然后转换。1.数字转换罗马数字。

2025-02-20 16:30:29 205

原创 StringJoiner

大致了解一下,不用学太细。指定字符之间的连接符的。

2025-02-20 16:02:12 176

原创 字符串——StringBuilder使用(拼接,反转)

9.StringBuilder操作字符串(拓展,反转等)字符数组:char[] chs ={'a','b'};字节数组:byte[] by = {98,97}5.统计字符次数(大写,小写,数字)1.传递内容到字符串。

2025-02-20 15:55:57 187

原创 数组基础学习

比较简单,有问题回头再深入研究。//交换索引——借助temp。

2025-02-19 16:00:50 312

原创 面向对象综合训练

里面不能直接输出ci,要调用get set方法sout(ci.getname)2.arr.foi快捷键直接生成for循环。3.arr[1]=c1给数组赋值。新get到的数组用法。

2025-02-19 14:12:34 148

空空如也

空空如也

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

TA关注的人

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