- 博客(42)
- 收藏
- 关注
原创 javaee程序设计 中南民族大学 复习
cookie操作是response.getcookies() 拿到数组 然后遍历cookies[i].getvalue().equal("name") 符合就进行操作 还有就是response.addcookie(cookie)request.getrequestdispatcher("name.jsp").forward(request,response)即可跳转页面过去。-- xx --> 这两个--不要忘了。response.getwriter().write("内容") 即可返回给前端数据。
2026-01-05 18:20:04
423
原创 字节一面(挂)后端实习岗
8 caffeine构造 线程池 分段锁 java的各种锁 为什么不用java的本地锁 为什么用编程式事务。7 b+树 mysql事务(稍微的重点) redis的zset是否有了解。算法LRU,或者判断该树是否是此树的子树 两个算法题做一个。4jvm内存划分 哪些是公共的哪些是私有的。3各种java的map。
2025-12-09 10:09:21
75
原创 记录一下自己的八股的东西
hashmap 1.7之前用的是数组+链表 1.8加了一个红黑树负载因子0.75 默认数组长度是16 如果链表长度大于8就开始转换成红黑树 数组长度大于12就会开始扩容 直接x21.7之前的扩容以后会直接使用rehash获取到哈希值,1.8以后用的是高位和低位再次进行hash位运算,如果得到的结果大于扩容数组的长度 那么会直接移动 结果就是当前下标加上扩容数组长度,否则不扩容。
2025-10-26 17:54:16
446
原创 学习springcloud的笔记
nacos&&loadbalance:放入依赖以后我们打开本地nacos,因为cloud的版本是2023以上,所以nacos必须要有另一个依赖loadbalance 负载均衡 (一般用ribbon 但是loadbalance逐渐取代他了) 然后就可以配置yml文件了,一个是发现addr 一个是文件配置addr(discovery addr 和 config addr) 然后就可以在对应的模块的主启动类上加一个@EnableFeignClients就可以注册上去了 其他模块就可以拿来用了。
2025-10-19 15:05:07
303
原创 总结一下鱼皮的代码生成平台
第六 护栏 现在的langchain4j框架好像并没有对应的护栏具体实现 但是有输入输出护栏这两个接口我们可以进行自定义设计,其实就是对输入输出的这两个字符串进行加强了,输入就是有没有违禁词或者数字太少太长之类的,输出可以有一个代码质量检测的功能,如果有违禁词就可以用一个repromt方法 对当前prompt加一些提示词进去然后就会重进调用方法了,等等。学到第一个知识就是 开发自己的ai功能要有属于自己的系统提示词 ok。然后我们发现如果要发开属于自己的那么我们要有自己的ai系统提示词,
2025-10-19 14:14:24
319
原创 实习遇到的报错之mybatis映射错误(1)
都以为是自己设置的字段和前端传过来字段不同,或者是自己的字段和数据库字段不同,或者是数据类型不同,比如说int不能用null等等。搞了一天了结果是用别人的模版拿过来的时候导入的依赖导错了啊啊啊啊啊啊啊啊啊啊啊!所以搞了一天了家人们,就是因为这个狗东西浪费我一天周末的时间。出错的东西是@param这个依赖。如下这个才是正确的!
2025-08-03 17:35:52
125
原创 定长滑动窗口和相向双指针题单复习(灵神)
0(灵)x(茶)3(山)f(艾府),不知道各位有没有get到呢。今天计划就是复习一下滑动窗口和双指针的题目。今天逛b站灵神视频的时候看到有个评论是0x3f。一样是从灵神题单里面拿出来做。念了一遍好像就是灵神的名字了hhh。
2025-08-01 09:37:10
220
原创 单调栈的思路(灵神题单)
while里面的f>=temperatures[st.top()]表名如果栈顶元素如果小于当前元素f那么就会弹出,在理解这句话的时候脑子里面一定要有一个左开右闭的栈模型,左边是开口的,右边是关闭的栈模型,这样才好理解。所以我们在右边往左边遍历的时候我们实现的栈里面的底部都是最大的,依次往栈顶走逐渐变小。这就是单调栈模版的思路。最后我得出结论 f>=temperature[st.top()]最后的结果就是栈内元素使单调递增的。单调栈我用的是灵神的右枚举左维护思路来做。温度模版题的模版是这样的。
2025-07-31 11:26:13
137
原创 大二终找到实习(21号)
boss第七面找到实习。原本后面还有一个中厂和一个小厂的面试,但是我想着我找到了而且这些天还挺累的就不打算面了直接推掉。21号入职到现在已经有一个星期左右,来这里挺好的就是有点远。
2025-07-30 16:45:40
99
原创 第三面 5.21 拿到实习
5.1开始到现在一直找终于找到了,boss投了一百多个最终三个面。随后开始我们五个人组成小组随后分析问题。最后选一个人出来总结。看表现,最后我是被选上了,其他人不知道,估计也有人被选上了的。简历他们是自己打印的,估计他们也有看过。面试的方式是多对多,3个hr面我们五个。开场简单的自我介绍。
2025-05-21 17:43:52
167
1
原创 大二 第二面 (一个星期) 估计是挂了
三个redis的解决方案 雪崩,穿透,击穿。因为他也没问多少,所以我就直接回答也不错。但是到现在也没有回复,估计挂。
2025-05-21 17:41:15
133
原创 Http状态码笔记
一般是服务器内部错误。500是服务器内部错误,502是网关错误,503是服务器过载或者维护。200就是请求成功,一般有返回值,201表示创建成功,204表示成功但是不返回任何值。400表示请求错误,401表示没有权限,403表示被拒绝,404表示找不到。12345这五个开头,一般面试只要记几个常用的就可以了。301是重定向,302是临时定向。1表示信息,100表示客户端应该继续发送请求.
2025-05-17 17:04:37
178
原创 TCP/UDP协议原理和区别 笔记
如果是两次的话,客户端给服务端的syn1包卡住了,那么客户端会再发一个syn2包给服务端,服务端给客户端连接,但是这时候syn1包又好了,再次请求给服务端,这时候服务端会再次连接,最后导致客户端认为是一个连接,但是服务端认为是两个。为什么要一直等到超时才会关闭,因为如果ack没有发送到服务端就会出现问题,如果一直等待可以避免,如果没有发送到那就重发即可。(第四次挥手)客户端发送ack给服务端,服务端接收到ack直接关闭,客户端等待超时才会关闭。再然后我们看TCP的原理(三次握手,数据传输,四次挥手)
2025-05-17 16:39:10
497
原创 OSI七层模型和TCP/IP四层模型
应用层 我们把OSI里面的应用层,表示层,会话层合为一个。网络接口层 我们把OSI里面数据链路层和物理层合为一个。ssl,tls,数据格式转换,比如说加密。字符流传输或者光纤电缆直接安装。大二提前看看了解OSI七层模型。tcp,udp,保证数据完整。然后是Tcp/Ip四层模型。http,提供网关服务。
2025-05-17 15:47:31
149
1
原创 mysql隔离级别的学习分享
那么首先事务1进行了数据的修改,然后事务二上来进行数据的查询,拿到了事务一的数据,但是事务一发生故障回滚了。由于事务一第一次读取数据是正常的,但是事务二进行了数据的修改并且提交,那么事务一在进行数据的读取拿到的数据就已经被修改了,所以就出现了问题,也就是不可重复读。简而言之:事务1没有提交事务,但是事务二获取到事务一没有提交事务之前的数据,也就是脏读。所以我们区分与幻读和可重复读,幻读用的是数据行数,可重复读是数据内容。可重复读,也就是拿到了一样的数据,保证了事务的一致性。一样的数据指的是修改数据内容。
2025-05-16 12:17:04
218
原创 云图库和黑马点评的项目学习经验
然后因最难的点在权限的获取的实现,因为我分为公共图库谁都可以看,然后还分为个人空间和团队空间,这三个空间都有图片,但是我们实现satoken给我们的那个实现类以后发现参数根本不够,只有一个loginid和logintype,我们只根据loginid获取不到我们想要的东西,因为我们还要空间id才可以进行空间的操作。批量导入图片是bing里面直接进行jsoup的导入,然后以图搜图我用的是百度的地址,首先用f12找到他的接口,然后调用百度的这个接口,就是直接发送请求,获取到的就是我们可以找到图片的地址了。
2025-05-14 23:15:52
530
2
原创 第二面(过几天我会发结果)大概率有 5.14
然后他回答的都是项目的知识,还有一些是问的是一些项目的流程,是怎么实现的以及一些主要的功能,我主要用的是鱼皮的云图库和黑马的黑马点评。ai问答你是怎么做的,我就说自定义ai模型,设置好他的角色,他要干嘛以后就怎么怎么样,输入文字返回出结果。消息队列是mq吗你项目实现的,我说不是,因为这是小项目我用的是redis里面的消息队列。阿里云大模型的ai绘图提了一嘴没怎么问,我就说我用帮助文档做的。redis+ccaffeine多级缓存怎么干的。缓存穿透,雪崩,击穿解决。bitmap你是怎么用的。
2025-05-14 23:12:45
249
原创 大二java第一面小厂(挂)
吸取经验,刷了力扣mysql基础50题,然后学了ai,会调用阿里云大模型进行扩图操作以及学习了自定义ai模型进行问答。mysql里面的各种操作,比如说分表怎么分,分页查询怎么用。然后简历没有写好,简历如果你没有把握就不要学我乱写,G。websocket怎么实现的多人协作编辑功能。mybatisplus里面的分页查询你怎么用。shardingsphere分表你怎么分。Hutool用的那些你常用的方法。mybatis怎么防止数据转义。springboot的常用注解。redis的多级缓存。怎么实现的分库分表。
2025-05-14 23:06:05
5496
8
原创 rabbitmq学习笔记快速使用
jackson依赖我们只要把他的序列化对象初始化给spring管理以后就可以对数据进行序列化和反序列化了,对比于spring的jdk序列化器,jackson更好用,性价比更强,内存占用更小。使用@RabbitListner 第一个是队列的名字 而不是bean的名字 通过队列的名字进行监听 然后处理数据。直接new出来queue返回就可以了,我们使用的是rabbitmq里的队列而不是java里面的队列。然后是进行队列的声明,交换机的声明,以及队列和交换机的绑定的声明。所以第三个就是交换机和队列的连接了。
2025-05-09 18:20:00
425
原创 nginx的学习笔记
我们用户进入到前端界面的时候就会触发nginx,然后里面的任何一个请求都会拿到nginx里面进行反向代理,而我们所需要配置的listen就是前端的端口,server_name是前端的ip地址,然后我们还要写localtion里面的proxy_pass 这个就是我们要映射到后端的网址了ip和端口要写完整就可以了。例如,如果请求为/images/logo.png,则Nginx会查找/home/zcloud/applications/iomp-web/images/logo.png。然后我们来看看动静分离。
2025-05-09 17:23:57
369
原创 学习一下linux的思路和笔记分享
压缩包是使用tar -czvf a.tar.gz a.txt c是create z是zip包 v是详细过程 f是file名字 一个都不能缺 缺少就报错。首先是 ip地址,刚刚开始学习的时候我用外部软件来连接本地虚拟机的时候就用这个,当时我用的是ip addr,后面也可以用ifconfig查看。那么我学习的主要是cp 这个主要用来进行进行备份 比如说cp a.jar a.back.jar 就把a备份一下。进程就是top可以查看信息 然后是内存 free -h 然后是磁盘 df -h。
2025-05-09 16:27:19
512
原创 记录一下学习kafka的使用以及思路
我在学习的时候直接导入是没有导入成功的,我猜测大概的原因是我本地的仓库没有kafka的依赖,其实也就是没有下载过,所以没有指定版本号的话是在本地是找不到的所以报错,指定版本号下载了以后就可以了,后面就可以不用指定版本号了。我们主要使用kafka里面的注解进行使用,第一个就是配置kafka,第二步就是使用kafkaTemplate进行sent方法进行发数据放到队列里面即可。主要就是@kafkalistener注解,然后就是使用数据就可以了。下面这是kafka的依赖。然后消费者里面是这样写的。
2025-05-09 15:06:57
563
1
原创 springcloud学习笔记
在nacos进行资源的配置设置以后,我们通过使用@RefreshScope注解进行实时的刷新配置。有一个小面试题就是 配置中心和applicaiton.yml的优先级哪个更高 当然是配置中心 因为配置中心的设置目的就是为了配置而设计的。然后这里还有一个知识点就是命名空间(多套环境),多套环境里面我们可以对各个微服务里面进行不同的配置设置。这样更好的使用远程调用,更加符合我们之前的操作,并且它里面自动使用负载均衡。通过调用RestTemplte进行远程调用对方的api进行方法的使用。
2025-05-06 08:37:43
338
1
原创 超级智能体总结(目前只有四集)
直接在advator里面new messagechatmemoryadvator()就行,参数(项目里面直接用内存) 也就是 new Inmemorychatmemory(),初始化完chatclient以后,调用的时候要在里面进行设置,比如说特定的id和记录条数。总的来说就是了解一下ai的调用,以及怎么通过大模型进行创建你自己的ai,通过设置ai的身份以及ai应该做什么就可以获得属于你的ai了。第一部分知道了spring里面也有ai,所以我们使用spring的时候直接用他里面的就可以了。
2025-05-03 19:46:28
191
原创 鱼皮的云图库学习项目总结
然后就是压缩图,我们上传到cos上面的是已经压缩好的图片,减少图片上传大小,上传更快,降低流量的使用,我们使用阿里的数据万象,设置好规则以后他会处理好的。然后就是批量上传图片功能,我们使用一个免费的网站进行爬虫,因为我们看到网站里面返回的是html格式文件,所以我们使用jsoup来进行解析,连接到地址以后返回结果我们首先获取到最外边一层dgController,然后在找到里面的img.ming这里就是一个列表了,有很多的图片信息,再然后我们就可以使用src获取到图片的地址了,但是我们只需要?
2025-04-22 15:50:23
1024
1
原创 黑马点评笔记(自己学完进行梳理)
那么我们要在登录拦截前面再加一个全网址拦截,我们首先进入全网址拦截然后我们再进去我们之前定义好的登录拦截,因为我们全网址拦截以后必定进去登录拦截,所以我们全网址拦截如果获取得到的authrization的token为空 直接放行 然后到登录拦截 直接拦截,然后token不为空,但是redis里面查询到的user为空,也直接放行,然后到登录拦截 也会被直接拦截,原因是我们只有token不为空并且查询到的user也不为空 我们才会进行当前线程的user保存以及redis的更新,也才会到登录拦截 才会被放行。
2025-04-21 20:32:20
597
1
原创 acwing 二分 数据范围 一看就懂! 区间划分不出错!
接下来找最后出现的位置 然后我们想一下,就是要 红色的区域把大于k的数的区域覆盖掉 反过来也就是说蓝色的区域把小于等于k的区域覆盖掉 然后我们的判断条件是 l+1!=r 也就是说最后肯定是l=r-1 所以 那么 l就是最后一个出现k的位置 所以我直接用flagr=l。我们在第一次找到第一个出现的k (我们现在脑中想一下)我们只需要让右边红色的r直接把k全部覆盖掉,那么红色区间的第一个就是k 也就是第一个出现k的位置 所以我直接用flagl=r 那么这就是第一个出现的位置。看完以后,你会醍醐灌顶的。
2024-10-31 22:23:24
281
原创 KMP算法 代码
/总的思路就是 用得到的nearr 然后用 i=0指针 指向 s j=0指针 指向s1。//得到nearr的方法 就是 s **自己对自己** (** 很重要)//最后输出 起始位置 长的减去短的即可 也就是 i-j 但是是从0开始。//get nextarr i是后缀结尾指针 j是前缀结尾指针。//要不然 就是 i=0 指向s1 然后j=0 指向s。// 用 i=0指针 指向 s j=0指针 指向s1。//kmp模式匹配的时候匹配的是 长 的字符串。// 然后 用 s[i] 和 s1[j]
2024-10-19 09:17:04
439
1
原创 洛谷 最小生成树模版 代码AC 最新
因为是最后一个WA了 所以下载了数据点,看题解没有一个是输出orz的 结果最后一个就是要输出orz 给我气到了 所以写了这个文章。
2024-08-07 16:33:52
432
原创 2024牛客暑期补题 4 I Friends
其实就是在构建完图的情况下,自己的脑子里面要有一个构件图,在一个一维数组里面(图的构建是二维的,但是抽象来说用双指针就是一维),我们在右指针所指的map里面count所指向的节点(我们先前的map已经进行了排序,所以在进行for操作的时候,各个节点上下是挨着的),map里面的指向是 u->v 但是在查找当中只要两个之间有联系就可以,所以可以直接count。最后就是result直接就是右指针的位置减去左指针位置就是区间的长度 然后看代码就行.用到图论的知识 以及set的自动排序和去重 以及双指针就可以做。
2024-08-05 15:58:18
747
原创 没啥内容 主要就是感叹一下其中的一个点的代码的巧妙
其中的覆盖 nextdistance=max(nextdistance+nums[i[);让我感到代码的奇妙,大家可以去试试,刚好可以覆盖上去区间,并且丝毫不差。代码随想录的贪心算法中的跳跃游戏2。
2024-08-02 13:49:11
424
原创 学习经验-并查集+kruskal算法 图论知识小总结
然后kruskal先对val排序,sort(Edge.begin(),Edge.end(),cmp) Edge和edge别弄混了奥,然后因为我们要进行生成最小生成树,然后进行题目的解答,所以我们和并查集混起来使用,所以就直接for循环 1到最后一个节点。②find函数:用来找到输入节点的祖先,由于防止过多的递归,可以直接用find返回的结果(也就是祖先)直接复制给该节点,那么得到的结果就是 该节点直接指向祖先,可以极大减少时间,即:father[u]=find(father[u]);并查集主要有四个函数。
2024-07-29 16:59:48
469
原创 自己的经验总结一下二维前缀和
我们要在arr【i】【j】的那个格子上,对,就是二维数组arr上,在我们需要的任意矩阵i j对应的arr【i】【j】为基础,然后pre【i】【j】那一整片的整个矩形面积的求和就是 ①以arr【i】【j】为基础 ②两个小的二维数组相加 ③ 减去重复的一个,是一个二维数组即可。那么就是 pre[i][j]=pre[i][j-1]+pre[i-1][j]+arr[i][j]-pre[i-1][j-1];一般做题都是做的是任意i j 的矩阵,然后求和。然后重点就是构建任意i j的二维求和矩阵;
2024-07-27 16:33:44
752
原创 记录一下学习的经历
二分的意思不仅仅只是查找一下答案,在一定的数组范围内找到题目所给的答案那么简单,而是在一个很难求的一大段比如1到1e8区间或者更大long long区间之内直接可以定位到正确答案,而又是二分思想,所以就算是再大的区间时间也是非常的少的,那么我们可以直接用int left赋值为答案的最小值,int right赋值为答案的最大值 mid为中间值 然后套用二分思想,在mid判断哪里改一下,改成 if(check(mid)==1) 那么就 后面的一样 ==0有怎么样。三分我后面把二分题刷完再看。
2024-07-12 17:02:46
222
原创 P1065 [NOIP2006 提高组] 作业调度方案 自我经验总计附上题解
本题最大的难点就是变量太多了,逻辑很绕,第一次看的时候自己都懵了。//6.在当前机器上,最早时间为起点向右扫,找到存放区间。//2.找到工件,找到插入的这个工件的工序。//1.给定安排顺序,找到一个需要的工件。//4.找到这个工序需要花多少时间。//每个工件 每个工序的机器编号。//每个工件 每个工序的工作时间。//3.找到需要在那个机器工作。//5.找到工序最早开始的时间。//记录当前这个工件是哪个工序。//记录工序的结束最后时间。//7.将工序放在空位上。//每个机器都有时间轴。
2024-07-10 15:08:00
599
原创 P1540 [NOIP2010 提高组] 机器翻译 经验总结
刚刚开始的思路是(这个时候还没有意识到如果有可以用得到STL容器的时候,用的话就可以得到很大的便利这回事,劝大家好好了解STL,当然本人也是刚学)输入 int[m+3]这个数组当中,然后进行一系列操作。输入12以后又要输入1 所以要for循环遍历一边 然后找到1所以要continue 然后到输入5然后到4 此时已满 要进行覆盖 所以又要for循环 arr[j]=arr[j+1] 然后又要num++(我们要输入的前面就要写),然后又要判断重复,很麻烦。每一次输入我们就让对应位置的元素变成false。
2024-07-06 21:32:07
432
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅