- 博客(115)
- 收藏
- 关注
原创 NextJS全栈入门
NextJS官网:https://www.nextjs.cn/中文网:https://www.nextjs.cn/docs: Next.js 支持服务器端渲染,可以在服务器端生成页面的 HTML,从而改善 SEO 和提高首屏加载速度。对于需要快速索引的内容,SSR 是一种重要的优化手段。: Next.js 支持静态站点生成,可以在构建时预先生成所有页面的 HTML 文件,使得应用更快速,并且可以通过 CDN 进行分发。对于内容不频繁更新的网站,SSG 提供了极致的性能。
2024-12-03 16:10:57
1431
原创 你还在手动画ER图吗?让SQL自动生成ER图,轻松解决作业难题!
文章介绍了一款在线 SQL 转 ER 图工具,能将输入的 SQL 语句自动生成精准 ER 图,具有快速生成、自动识别表结构和关系、便于理解修改、解决作业痛点等优势,还介绍了用自然语言生成 ER 图的功能,同时阐述了 ER 图的画法、图形含义及不同关系定义。
2024-12-03 14:49:16
16645
4
原创 RabbitMQ面试题
总结为:消息未达到交换机,消息未达到队列,队列中丢失消息,消费者未接收到消息生产者确认机制是指生产者发送消息后,需要等待RabbitMQ服务器的确认消息,以确保消息已经被成功地发送到RabbitMQ服务器。如果RabbitMQ服务器没有收到消息或者消息发送失败,生产者会收到一个确认消息,从而可以进行重发或者其他处理。消息失败之后如何处理呢?MQ默认是内存存储消息,开启持久化可以确保缓存中MQ消息不丢失主要是交换机,队列,消息持久化交换机持久化队列持久化。
2024-02-18 12:33:01
1510
1
原创 JUC并发编程
线程池是一种管理和复用线程的机制,它可以在应用程序中创建和维护线程,以便更有效地处理并发任务。线程池的主要目标是降低线程创建和销毁的开销,并提高系统的性能、稳定性以及资源的利用率。程池组成:存储等待执行的任务。负责创建、管理和销毁线程。优势:线程的创建和销毁是相对昂贵的操作。通过线程池,可以事先创建一定数量的线程,并在任务到达时重复使用这些线程,减少创建和销毁线程的开销。线程池可以根据系统的负载情况动态地调整线程数量,使得系统更好地适应工作负载,提高整体性能。
2024-02-18 12:32:22
1026
原创 Java反射基础
代理可以无侵入式的对方法进行增强,而不需要修改原始方法的代码,这样就可以在不修改原始方法的情况下,对方法进行增强。通过接口保证,后面的对象和代理需要实现同一个接口,接口中就是被代理的所有方法。反射允许对成员变量,成员方法和构造方法的信息进行编程访问。Java通过什么方式来保证代理的样子?代理里面就是对象要被代理的方法。Declared表示私有。
2024-02-16 22:42:01
726
1
原创 黑马程序员项目-黑马点评
用户在提交手机号后,会校验手机号是否合法,如果不合法,则要求用户重新输入手机号如果手机号合法,后台此时生成对应的验证码,同时将验证码进行保存,然后再通过短信的方式将验证码发送给用户用户将验证码和手机号进行输入,后台从session中拿到当前验证码,然后和用户输入的验证码进行校验,如果不一致,则无法通过校验,如果一致,则后台根据手机号查询用户,如果用户不存在,则为用户创建账号信息,保存到数据库,无论是否存在,都会将用户信息保存到session中,方便后续获得当前登录信息。
2023-11-03 20:39:21
483
原创 Redis基础教程
Bean//创建RedisTemplate对象//设置RedisTemplate的连接工厂//创建json格式序列化对象//设置key和hashKey的序列化方式//设置value的序列化@Autowired@Test// 写入一条String数据redisTemplate.opsForValue().set("name", "蔡徐坤");// 获取string数据测试写入一个Pojo类@Test。
2023-11-02 17:04:15
706
原创 算法刷题-二叉树3
给定一个,其所有叶子节点都在同一层,每个父节点都有两个子节点。填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为NULL。初始状态下,所有 next 指针都被设置为NULL。
2023-11-01 19:41:34
311
原创 MySQL基础教程下
约束是作用于表中字段上的规则,用于限制存储在表中的数据。目的:保证数据库中数据的正确、有效性和完整性。删除外键语法:ALTER TABLE 表名 DROP FOREIGN KEY 外键名称语法 :ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段) REFERENCES 主表名 (主表字段名) ON UPDATE CASCADE ON DELETE CASCADE;
2023-10-31 19:31:04
116
原创 算法分析基础上机题目
假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。
2023-10-29 13:35:06
901
原创 Java集合-HashMap源码分析
Java的HashMap是一种基于哈希表实现的数据结构,用于存储键值对。在HashMap中,每个键都映射到一个值。
2023-10-28 18:19:41
247
原创 Java集合-ArrayList源码分析
ArrayList底层实现是数组数组是一种用连续的内存空间存储相同数据类型数据的线性数据结构。栈内存:在方法中定义的一些基本类型的变量和对象的引用变量都在方法的栈内存中分配,当在一段代码块中定义一个变量时,Java就在栈内存中为这个变量分配内存空间,当超出变量的作用域后,Java会自动释放掉为该变量所分配的内存空间。堆内存:堆内存用来存放 new 运算符创建的对象和数组,在堆中分配的内存,由Java虚拟机的自动垃级回收器来管理。
2023-10-27 19:40:51
603
原创 算法刷题-栈与队列
请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(pushpoppeekempty):实现MyQueueint pop()int peek()truefalse。
2023-10-27 19:39:08
132
原创 算法刷题-字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须**修改输入数组**、使用 O(1) 的额外空间解决这一问题。
2023-10-26 15:27:42
135
原创 计算机网络-物理层
如果信道的频带越宽,则能够通过的信号的高频分量就越多,那么码元的传输速率就可以更高,而不会导致码间串扰。然而,信道的频率带宽是有上限的,不可能无限大。在信道的频率带宽W一定的情况下,根据奈氏准则和香农公式,要想提高信息的传输速率,就必须采用多元制(更复杂的调制技术),并努力提高信道中的信噪比。波分复用WDM:光的频分复用FDM,根据频分复用的设计思想,可在一根光纤上同时传输多个频率(波长)相近的光载波信号,实现基于光纤的频分复用技术,目前可以在一根光纤上复用80路或更多路的光载波信号。
2023-10-26 15:26:39
638
原创 Java基础-反射
代理可以无侵入式的对方法进行增强,而不需要修改原始方法的代码,这样就可以在不修改原始方法的情况下,对方法进行增强。通过接口保证,后面的对象和代理需要实现同一个接口,接口中就是被代理的所有方法。反射允许对成员变量,成员方法和构造方法的信息进行编程访问。Java通过什么方式来保证代理的样子?代理里面就是对象要被代理的方法。Declared表示私有。
2023-10-25 22:57:41
327
原创 Java开发-WebSocket
WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信-浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并实现 双向数据传输。
2023-10-25 22:56:43
581
原创 计算机网络第一章笔记
若干节点和链路互连形成网络若干网络通过路由器互连形成互连网(互联网)因特网是当今世界上最大的互联网1969年,第一个分组交换网ARPANET1985年,NSFNET(主干网、地区网和校园网)1993年,NSFNET被替代,由各种ISP运营因特网服务提供者(Internet Service Provider,ISP)我国主要有:移动,电信,联通因特网已发展成为基于ISP的多层次结构的互连网络。
2023-10-24 19:18:23
508
原创 算法刷题-哈希表
给定两个字符串*s*和*t*,编写一个函数来判断*t*是否是*s*的字母异位词。**注意:**若*s*和*t*中每个字符出现的次数都相同,则称*s*和*t*互为字母异位词。
2023-10-24 19:14:44
276
原创 算法刷题-数组
给定一个含有n个正整数的数组和一个正整数target找出该数组中满足其总和大于等于target的长度最小的,并返回其长度**。**如果不存在符合条件的子数组,返回0。
2023-10-22 19:01:55
280
原创 代码随想录刷题-数组双指针
给你一个数组nums和一个值val,你需要移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用O(1)额外空间并。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。
2023-10-19 21:39:10
104
原创 代码随想录刷题-数组(二分查找)
给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1, -1]。你必须设计并实现时间复杂度为O(log n)的算法解决此问题。
2023-10-18 18:44:20
225
原创 SpringBoot文件上传
Springboot默认单个文件最大为1M,可以在配置文件中进行设置。点击右上角AccessKey管理,添加一个Key。java9以上需要添加下面依赖。创建一个bucket。
2023-10-08 12:23:32
135
原创 Codeforces-Round-895-Div-3
你有两个装有水的容器。第一个容器含有a克水,第二个容器含有b克水。这两艘船都非常大,可以容纳任意数量的水。您还有一个空杯子,最多可容纳c克水。一次,您可以从任何容器中舀出c克水,然后将其倒入容器中。请注意,一次倒入的水的质量。使容器中水的质量相等所需的最少移动次数是多少?请注意,您无法执行除所描述的移动之外的任何操作。
2023-09-09 13:03:33
692
原创 ACM算法竞赛中在编辑器中使用输入输出样例-CPH
我们可以在编辑器中创建三个文件,一个是main.cpp,一个是test.in,一个是test.out分别用来写代码,输入输入数据,显示输出数据这种方法的好处是不需要插件,在任何编辑器中都可以实现,例如Devc++,sublime,vscode,clion…可以在比赛的时候使用,例如篮球杯,天梯赛。。。以Clion为例:文件结构长这样,然后使用freopen来读取文件和写入文件,加上ifndef。
2023-08-10 14:00:58
1485
原创 Codeforces-Round-891-Div-3
给你一个由nnn个整数组成的数组。您的任务是确定是否可以将其所有元素着色为两种颜色,使得两种颜色的元素之和具有相同的奇偶性,并且每种颜色至少有一个元素着色。例如,如果数组为[1,2,4,3,2,3,5,41,2,4,3,2,3,5,41,2,4,3,2,3,5,4],我们可以将其着色为:[1,2,4,3,2,3,5,4\color{blue}{1},\color{blue}{2},\color{red}{4},\color{blue}{3},\color{red}{2},\color{red}{3},\co
2023-08-08 13:26:29
881
1
原创 SG函数Nim游戏博弈论
给定一个有N个节点的有向无环图,图中某些节点上有棋子,两名玩家交替移动棋子。玩家每一步可将任意一颗棋子沿一条有向边移动到另一个点,无法移动者输掉游戏。对于给定的图和棋子初始位置,双方都会采取最优的行动,询问先手必胜还是先手必败。
2023-07-28 09:43:21
280
转载 台阶型Nim游戏博弈论
现在,有一个n级台阶的楼梯,每级台阶上都有若干个石子,其中第i级台阶上有ai个石子(i≥1两位玩家轮流操作,每次操作可以从任意一级台阶上拿若干个石子放到下一级台阶中(不能不拿)。已经拿到地面上的石子不能再拿,最后无法进行操作的人视为失败。问如果两人都采用最优策略,先手是否必胜。
2023-07-28 09:42:51
281
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人