自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 力扣hot100菜鸟版 题号560

废话少说,直接看题目,首先理解一下题意,子数组的要求是数组中元素的连续非空序列。在示例1中,就是下标0,1和下标1,2这两个子数组。然后是示例2,下标0,1是显然的,我看了好久都没找到第二个在哪,问了ai才知道下标2就是一个子数组,不知道有没有和我一样的人(哭笑不得)

2025-12-26 21:18:06 232

原创 力扣hot100菜鸟版

本系列文章仅仅用来记录本人的算法学习历程,分享本人在学习中的思考(文章解法可能来自本人,也可能来自网上别人分享的题解,转载会标出思路来源。希望可以和大家一起进步!

2025-12-12 23:13:52 207

原创 rabbitMQ基础介绍

在实验中,我们发现默认的消息投递机制是将消息轮询投递到每一个消费者(不论消费者是否已经处理完上一条消息),因此,为了应对各个消费者消费能力不同的情境,我们要设置prefet属性为1,确保只有这个消费者上一条消息消费完毕再投递给这个消费者,以此最大程度利用消费能力。

2025-10-16 21:14:00 304

原创 redis基础总结

如图,我认为最重要的特点就是这是一个基于内存的数据库,正因如此,他的速度快,延迟低,同时也带来一些问题,例如内存有限啊,数据安全问题等。简单介绍下cache,内存和外存(,有助于后面理解缓存,避免混淆概念)CacheCPU的“贴身秘书”。它解决了CPU和内存之间的速度不匹配问题。工作原理(局部性原理):如果一个数据被访问,那么它很快很可能再次被访问(例如,循环语句中的变量)。如果一个数据被访问,那么它相邻地址的数据也很可能被访问(例如,遍历数组)。

2025-10-04 22:10:10 598

原创 视频在特定点播放失败

这个问题是我在火车上观看好下载的视频发现的,感觉以前没见过,所以了解了一下。简单介绍下问题:视频文件下载到了本地,观看时在特定节点,比如12:32,每次播放到这个时间点就会显示播放失败,如果跳过这个节点,直接跳转到后面的内容,就能正常播放视频。我的疑惑点在于:据我所知,下载的视频是允许损失部分数据的,这最多导致画面出现马赛克而不是播放失败。

2025-09-01 21:41:06 338

原创 苍穹外卖技术总结

前几天写完了苍穹外卖,休息了几天,现在来写一份总结归纳一下这个项目的收获,适合写完苍穹外卖的同学复盘一下学到的技术,针对薄弱的,不理解的点重点复习。建议对照目录直接找要看的技术,没必要从头看到尾,目录顺序是想到哪写到哪,不具备层次关系。支持丰富的数据结构一种单向的加密算法,只能由密码加密为密文,无法逆向。基于http协议的编程工具包,一个定义了http客户端应有的核心方法(execute)的接口HTTP的全称是(超文本传输协议)。它是一种用于从网络服务器传输超文本(如网页)到本地浏览器(客户端)的。

2025-08-26 21:37:32 1300 1

原创 苍穹外卖day_12(完结)

注意:一般模板文件较为复杂,基于POI设计模板文件的代码较为复杂,一般基于现有的模板文件。注意:在订单表中,同一种菜品可能因为口味或者下单时间不同归属于不同的条目。注意不要一个功能一个接口,可以按照功能分类,使一个接口实现多个数据的查询。首先介绍POI技术,用来实现Java程序对Excel文件的读写操作。补充一个stream的用法,用来获取集合的元素,再组成新集合。查询数据库,统计菜品和套餐中排名前十的名字和份数。按照产品原型理解设计接口,导入相关代码,导出店铺的数据到Excel文件,

2025-08-20 10:50:29 199

原创 苍穹外卖day_11

按照前端传来的日期数据统计营业额总量并返回给前端,前端通过ECharts实现可视化展示。集合的stream流时jdk8引入的为集合操作引入的函数式编程工具,用于对集合进行处理。注意:集合的stream流和IO的stream流是完全不同的概念,通过sql语句获得每天的订单数量,遍历累加获得总的订单数量。两个要注意的点,求和函数sum(),和大小于的写法。首先接受前端传来的参数,要注意日期需要指定格式。IO的stream流是用于处理文件传输的。根据传来的起始和结束时间计算具体的日期。WebSocket技术。

2025-08-19 19:49:35 176

原创 苍穹外卖day_10

使用Spring task,一般'天'和'周'是互斥的。可以使用cron在线生成器来生成cron语句。通过Spring Task定时执行任务,查询并且修改订单状态。代码内容大致为调用微信的下单接口,然后返回预支付交易标签,客户下单后一直不付款,导致订单超时,需要删除该订单。首先来使用下cpolar,用来获取临时的公网ip。cpolar.exe http 你要映射的端口号。下载安装,然后在安装的目录里输入。这样就获取到了临时公网ip。调起微信支付,返回支付结果。由于是定时任务,在此介绍下。

2025-08-16 11:03:45 361

原创 苍穹外卖day_09

我原本想用订单表,同时设置shoppingCartId和AdressBookId的逻辑外键来存储订单信息,将购物车的数据插入到订单表中,同时清空购物车,返回一部分订单数据用来展示订单信息。感觉面对较多的属性还是容易搞混,以后的属性和方法名要设置好,不然真的看不懂。由于订单属性的复杂,在插入等操作中,常常遗忘一些属性,而且一些属性容易搞混。(点名某些类的id属性,就不能加个前缀吗,每次get的时候都不知道你是谁)但是这样订单表的条目比较多,且查询订单需要查询多张表。视频采用订单表和订单明细表来存储订单信息,

2025-08-14 22:01:28 244

原创 苍穹外卖day_08

对于删除和修改操作,如果进行精准清理,代码较为复杂,而且要对数据库进行查询操作,因小失大。此时可以采用将缓存全部清理的方法,此方法看似非常粗暴,但使用上逻辑清晰,同时修改和删除操作相对较少,影响没有想象中大。以后可以写查询操作可以写一条包含大多数属性的动态查询sql,想查询就设置好要传入的属性,可以避免写多条sql。代码不一定要按照固定的思路去实现,例如对修改菜品的缓存清理问题,要判断修改菜品的内容,如果修改的是菜品分类,则要修改两个分类的缓存,相对比较麻烦。将选中的菜品,套餐添加到数据表中,用于暂存。

2025-08-13 21:27:39 406

原创 苍穹外卖day_07

aliyun.oss已经传递了这个依赖HttpClient是一个接口,HttpClients是一个构造器,CloseableClient是HttpClient的实现类发送get请求发送post请求封装数据。

2025-08-12 22:52:31 217

原创 苍穹外卖day_06

简单学习了redis及其简单应用,笔记写在Obsidian上了,在此不多赘述。状态的本质是数值,单独为状态的数值开一张表没必要,所以使用redis。今天吃席浪费了好多时间,明天要更加努力。设置店铺状态为营业中或者打烊中。代码过于简单,不予展示。

2025-08-11 22:23:24 211

原创 苍穹外卖day_05

又在抖音上刷到很努力的人了,感觉好迷茫。摆烂的时候身边人都在玩,又感觉很愧疚,努力的时候又能看见比自己更加努力的人,又觉自己的不足。批量删除菜品,要求起售中的和关联套餐的不能删除,要求删除关联的口味。把这个dish_id写成了id,导致口味一直在添加。争渡,争渡,惊起一滩鸥鹭。昨天又改了半天bug,又是动态sql写错了。动态sql的运用(foreach)sql语句是很大的弱项,必须要弥补。

2025-08-09 16:47:34 181

原创 苍穹外卖day_04

要搞清楚这个aop技术到底是在干啥,本质是通过注解标记的形式将set 2(4)个属性的代码抽取出来,减少代码重复,我一开始将mapper里面的sql语句中的createTime等属性删掉了,测试的时候一直为null,后来发现这个aop类只是简化了set的书写,sql语句还是要insert(update)属性。添加菜品的逻辑就是简单的添加物品,controller,service,mapper简单写写。注意sql语句的编写,主意好哪里是数据表的字段,哪里是实体类的属性。数据表的字段 = #{实体类的属性}

2025-08-07 21:39:51 405

原创 苍穹外卖day_03

方式二失败了,报了个序列化异常,可是我的springboot3.x和java11应该支持这个啊,奇怪。返回数据的LocalDateTime没有指定格式导致前端渲染展示不好看。其他都很普通,在service层使用了pageHelper(好用捏)在mapper里面,由于语句相对复杂,使用了xml配置sql语句。今天也是懈怠的一天,从明天开始努力....这里的concat没有自动补全提示,奇怪。

2025-08-05 23:10:09 207

原创 苍穹外卖day_02

显然,在interceptor层,我们可以通过解析jwt令牌获得登入者的id,问题是:如何在不调用service。今天状态好差,希望明天能打起精神来,现在是22点44分,等会还要学学git,好想推galgame提神。调用数据层之前腰包DTO转回employee,为了节省不必要的代码量,2:用户id设置了唯一约束,在id重复的情况下该如何捕获处理sql异常。1:employee中封装了当前操作者的id,应该如何获取?前端传来的数据和后端的有较大差别,为了方便接受前端数据,注意属性名要一致才能封装。

2025-08-04 22:55:38 217

原创 苍穹外卖day_01

niginx:注意必须保证路径全为英文。

2025-08-04 10:22:26 317

空空如也

空空如也

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

TA关注的人

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