- 博客(20)
- 收藏
- 关注
原创 SQL学习总结
存储过程是一组为了完成特定任务而预先编译并存储在数据库中的 SQL 语句集合。你可以把它想象成编程里的函数,它接收输入参数,执行一系列操作,还能返回结果。触发器是在插入、更新和删除语句前后自动执行的一堆SQL代码。在建立二级索引时,主键会自动加入二级索引中。视图可以简化查询,也可以提供一层抽象。事件是根据计划执行的任务或者一些。视图不存放数据,它只是查询的结果。
2025-03-31 20:21:30
939
原创 Java-动态代理学习总结
类似与Spring中的AOP,是对原有代码的增强,也是对原有代码的封装在Java中,代理(Proxy)是一种设计模式,用于控制对某个对象的访问。代理模式通过创建一个代理对象,来替代原始对象,以实现对原始对象的访问控制。代理对象和原始对象实现相同的接口,客户端对象可以透明地使用代理对象。
2025-02-17 19:57:30
315
原创 SpringCloud学习总结
Component //自定义断言Config> {@Override@Override@Overrideif (first!@Validated@NotEmpty@NotEmpty- name: Vip #自定义断言args:value: lei此断言判断https://cn.bing.com/user=lei,如果user不等于lei则拒绝访问@Component@Override@Override}));
2025-01-31 21:52:29
661
1
原创 NIO学习总结
而引入Selector后,可以将Channel注册在Selector上(相当于Channel添加到Selector这个集合中),每个由这个Channel所触发的事件,会放在SelectionKey中,然后由selector.select()进行阻塞,一旦有事件发生,就会处理。这段代码处理accept事件,并将客户端的channel注册在selector上,对可读事件进行反应,下次客户端发来数据,该channel会触发可读事件并添加到SelectionKey中,等待处理。将多个buffer写入同一个文件中。
2025-01-01 10:31:33
880
原创 JUC学习总结
文章目录锁锁机制原理Mark WordCAS重量级锁轻量级锁偏向锁volatile关键字Lock和Condition接口LockCondition可重入锁公平锁和非公平锁读写锁锁降级和锁升级原子类并发容器CopyOnWriteArrayListConcurrentHashMap阻塞队列线程池线程池的使用锁锁机制原理synchronized使用的锁就是存储在Java对象头中的,在Java中,对象存储在内存中,而每个对象内部,都有一部分空间用于存储对象头信息,其中就包含锁的信息monitorenter
2024-12-27 17:11:17
746
原创 操作系统—段、页、虚拟内存
虚拟内存(Virtual Memory)是操作系统提供的一种技术,它允许程序使用比实际物理内存更大的地址空间。页(Page)是另一种内存管理方式,它将内存划分为固定大小的块,称为页框(Frame),同时将程序的逻辑地址空间划分为相同大小的块,称为页。假如说直接将程序的程序段、数据段直接放入内存中,有可能会造成内存浪费,比如两个段之间有一小段内存,不会被使用,造成浪费,这就是内存碎片。从用户角度看,内存是一段连续空间,可以自由地将程序的段放入内存中,而虚拟内存可以将数据放入内存的页中。
2024-12-23 15:57:10
272
原创 Java并发编程基础篇
的线程的ThreadLocalMap中以该线程为key,赋的值的为值来创建当前线程的对应的HashMap,在Java中,启动main函数时,其实启动的是一个JVM的进程,尔main函数所在的线程是主线程。是进程的一个执行路径,一个进程可以有多个线程,线程之间共享进程的资源。:使用完这些变量后要及时删除,否则可能会造成内存溢出。在线程中对ThreadLocal赋值时,实际上是。是系统分配资源的基本单位,
2024-12-09 19:28:39
297
原创 mybatis复杂查询一对一,一对多
这段 MyBatis 配置代码用于查询。这段 MyBatis 配置代码用于查询。表的数据,并通过关联查询获取。表的数据,并通过关联查询获取。
2024-11-29 21:08:16
474
原创 反射与注解
注解是提供一种为程序元素设置元数据的方法,理解起来还是一样的,程序元素就是指接口、类、属性、方法,这些都是属于程序的元素,那啥叫元数据呢?就是描述数据的数据(data about data)通过class对象获取类的方法,但在使用方法时,要指名那个对象。运行结果发现输出为真说明类的class对象在内存中是唯一的。将上述代码的class文件反编译后。可以通过反射获取构造器来构造对象。可以看出注解本质是一个接口。
2024-11-28 21:15:27
361
原创 SpringBoot3+Vue3 前后端分离项目基于Jwt的校验方案
使用redis实现黑名单功能,用户在退出登录时会将token的uuid存放在redis数据库上,用户在每次请求数据时,后端会校验。用户每次向后端请求数据,会携带token,在SpringSecurity过滤链中进行校验。包装成一个map,并转存到消息队列中,还有将验证码存入到redis中,供后续验证。首先用户向后端请求验证码,来验证邮箱是否正确,以此来判断用户是否可以重置密码。在队列的监听器中,监听器根据队列里的内容发送对应邮件。用户在请求验证码时,后端会将用户的。实现mapper,service。
2024-11-27 09:46:41
538
原创 王爽汇编总结
实际上在执行cal指令会将cal的下一个指令压入栈,在执行ret的指令时,会将栈顶的数据pop给IP。在内存中指令和数据没有差别,都是二进制信息,cpu将CS:IP指向的内存视为指令。观察红色方框,发现汇编指令与源代码不符,这样因为数据与指令混在一起,而在内存中。在debug中查看,代码先执行一遍s代码,然后执行loop,相当于c++中的。汇编中的数组与c++类似,不过汇编中的数组偏移的单位是字节。在c++中函数的目的是可以重复调用某段代码,在汇编中使用。,观察上图的栈帧,发现此时的栈顶数据正是。
2024-11-21 11:41:40
871
原创 HTML个人知识总结
name 属性用于指定表单元素的名称。这个名称在表单提交时会作为键与对应的值一起发送到服务器id 属性用于指定元素的唯一标识符。在同一个HTML文档中,每个id必须是唯一的。
2024-09-27 16:39:41
454
原创 基于Servlet实现上传和下载文件
基于servlet可以实现前后端分离,前端的html页面中可以用form表单,后端可以在service方法中实现上传与下载
2024-09-17 17:10:15
745
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人