自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA开发日志之功能完善

附近商户功能GEO数据结构GEO就是Geolocation的简写形式,代表地理坐标。Redis在3.2版本中加入了对GEO的支持,允许存储地理坐标信息,帮助我们根据经纬度来检索数据。:添加一个地理空间信息,包含:经度(longitude)、纬度(latitude)、值(member):计算指定的两个点之间的距离并返回:将指定member的坐标转为hash字符串形式并返回:返回指定member的坐标:指定圆心、半径,找到该圆内包含的所有member,并按照与圆心之间的距离排序后返回。6.2以后已废弃。

2025-07-01 09:00:00 1095

原创 java开发日志之达人探店

这段代码使用 Spring Data Redis 的 ZSetOperations 接口从 Redis 有序集合(Sorted Set)中按分数降序查询元素,并返回包含元素和分数的元组集合。为每个用户生成唯一的请求标识(如 UUID),并将其存入 Redis。本例中的个人页面,是基于关注的好友来做Feed流,因此采用Timeline的模式。Feed流中的数据会不断更新,所以数据的角标也在变化,因此不能采用传统的分页模式。锁的唯一性:通过 UUID 生成唯一的锁值,防止不同请求之间的锁被误释放。

2025-06-30 09:00:00 1165

原创 JAVA开发日志之基于Redis的分布式锁优化

而不会出现死锁的锁机制。在分布式系统中,可重入锁需要解决跨节点的线程安全问题,Redisson 作为 Redis 的 Java 客户端,基于 Redis 实现了高性能的分布式可重入锁。当我们指定起始ID为$时,代表读取最新的消息,如果我们处理一条消息的过程中,又有超过1条以上的消息到达队列,则下次获取时也只能获取到最新的一条,会出现漏读消息的问题。主从一致性如果Redis提供了主从集群,主从同步存在延迟,当主宕机时,如果从并同步主中的锁数据,则会出现锁实现。ueue),字面意思就是存放消息的队列。

2025-06-21 23:20:16 1058

原创 Java开发日志之优惠价秒杀

Redis提供了Lua脚本功能,在一个脚本中编写多条Redis命令,确保多条命令执行时的原子性。特价优惠券才需要填写这些信息。认为线程安全问题不一定会发生,因此不加锁,只是在更新数据时去判断有没有其它线程对数据做了修改。认为线程安全问题一定会发生,因此在操作数据之前先获取锁,确保线程串行执行。通过加锁可以解决在单机情况下的一人一单安全问题,但是在集群模式下就不行了。序列号:32bit,秒内的计数器,支持每秒产生2^32个不同ID。需求:定义一个类,实现下面接口,利用Redis实现分布式锁功能。

2025-06-19 09:00:00 1496

原创 java开发日志之缓存篇(完)

方法2:将任意Java对象序列化为json并存储在string类型的key中,并且可以设置逻辑过期时间,用于处理缓存击穿问题。是指客户端请求的数据在缓存中和数据库中都不存在,这样缓存永远不会生效,这些请求都会打到数据库。方法3:根据指定的key查询缓存,并反序列化为指定类型,利用缓存空值的方式解决缓存穿透问题。方法4:根据指定的key查询缓存,并反序列化为指定类型,需要利用逻辑过期解决缓存击穿问题。根据id查询店铺时,如果缓存未命中,则查询数据库,将数据库结果写入缓存,并设置超时时间。

2025-06-18 09:26:30 779

原创 java开发日志之缓存

本文介绍了三种常见的缓存问题及解决方案:缓存穿透(请求不存在数据)、缓存雪崩(大量key同时失效)、缓存击穿(热点key失效)。针对缓存穿透,建议缓存空对象或使用布隆过滤器;缓存雪崩可通过随机TTL值、集群部署和限流策略解决;缓存击穿可采用互斥锁或逻辑过期方式。文中还提供了Java代码示例,展示了如何通过互斥锁防止缓存击穿,并指出可能出现的空指针异常问题。这些方案各有优缺点,需要根据实际场景选择合适的缓存优化策略。

2025-06-11 09:00:00 352

原创 Java开发日志之商户查询缓存

根据id查询店铺时,如果缓存未命中,则查询数据库,将数据库结果写入缓存,并设置超时时间。就是数据交换的缓冲区(称作Cache),是存贮数据的临时地方,一般读写性能较高。更新缓存:每次更新数据库都更新缓存,无效写操作较多。删除缓存:更新数据库时让缓存失效,查询时再更新缓存。Service实现代码 使用了RedisList。如何保证缓存与数据库的操作的同时成功或失败?根据id修改店铺时,先修改数据库,再删除缓存。由缓存的调用者,在更新数据库的同时更新缓存。先删除缓存,再操作数据库。先操作数据库,再删除缓存。

2025-06-10 09:00:00 293

原创 线性支持向量积实战篇-小白也能看懂的机器学习算法

在机器学习领域,鸢尾花 (Iris) 数据集是一个经典的分类数据集,常被用于各种分类算法的入门示例。本教程 基于周志华老师的《机器学习》来写的,基于自己的理解和自己举的一些小例子,希望小白可以快速学习和理解机器学习算法。Iris 数据集包含 150 个样本,每个样本有 4 个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度,以及 3 个类别:山鸢尾、杂色鸢尾和维吉尼亚鸢尾。这里我们选择花瓣长度和宽度两个特征进行可视化,可以看到不同种类的鸢尾花在这两个特征上的分布情况,有助于我们理解后续的分类结果。

2025-06-09 10:00:00 1432

原创 SVM理论篇-小白也能看懂的机器学习算法

当C值较大时,如 (C = 100) ,模型对违反间隔约束的容忍度较低,会尽量正确分类所有数据点,分类边界会更复杂,可能会过度拟合训练数据。当C值较小时,如 (C = 0.01) ,模型对违反间隔约束的容忍度较高,更注重最大化间隔,分类边界相对简单,可能会出现欠拟合。本教程 基于周志华老师的《机器学习》来写的,基于自己的理解和自己举的一些小例子,希望小白可以快速学习和理解机器学习算法。在特征空间中找到一个最优超平面,将两类样本分开,并最大化分类间隔(Margin),以提高模型的泛化能力。

2025-06-08 20:53:24 714 1

原创 Java开发日志之基于session

因为之前session存储的是“code”,code 验证码的key写死了,后边验证可能会验证码正确,但是手机号不正确,所以这里吧key改成了手机号,方便后边做校验。:多台Tomcat并不共享session存储空间,当请求切换到不同tomcat服务时导致数据丢失的问题。Session 是服务器端用于存储用户会话数据的机制,用于跟踪用户在网站中的活动状态。最后在UserController中实现获取当前登录用户并返回。Controller的实现。Service的实现。登录校验拦截器的实现。

2025-06-05 16:58:49 353

原创 Java开发日志之Redis基础篇

Redis的SortedSet是一个可排序的set集合,与Java中的TreeSet有些类似,但底层数据结构却差别很大。SortedSet中的每一个元素都带有一个score属性,可以基于score属性对元素排序,底层的实现是一个跳表(SkipList)加 hash表。Redis的Set结构与Java中的HashSet类似,可以看做是一个value为null的HashMap。HSETNX:添加一个hash类型的key的field值,前提是这个field不存在,否则不执行。

2025-06-04 20:24:56 780

原创 参数篇1-小白也可以看懂的机器学习算法

根据召回率公式我们计算出召唤率为70%,这意味着在所有实际患癌的人群中,该检测方法只能检测出 70% 的患者,还有 30% 的患癌者被漏检了。假设我们在新的偏斜数据集上建⽴了⼀个新模型,我们的模型正确识别了 90 张图像中的80张⾮⽓胸图像和10张图像中的8张⽓胸图像。它被定义为精确率和召回率的简单加权平均值(调和平均值),能够在正负样本不平衡或对误判代价敏感的场景中,提供更均衡的评估标准。如果我们仔细观察,就会发现数据集是偏斜的,也就是说,一个类别中的样本数量比另一个类别中的样本数量多很多。

2025-06-03 17:10:09 1045

原创 苍穹外卖新增Ai功能终章

在views/ai-service下新建一个index.vue。根据科大讯飞的api的调用文档 我们发现 可以设置对话背景。通过源码我们发现 左侧菜单栏是按照路由表来循环遍历的。因为我们是商家的客服 所以我们压入一个对话背景。首先在Controller中创建。然后根据大模型给的api调用格式。然后先把账号内容配置注入到程序。所以我们定义后端返回的数据为。所以我们在路由表中新增。然后我们对代码进行改造。创建aiService。实现Aiservice。

2025-05-28 19:23:31 960 64

原创 苍穹外卖新增功能之前端篇

学弟想用苍穹外卖当毕设 让我帮忙改一下前端和新增后端功能 顺手记录一下修改的过程 需要源码的可以留下邮箱。如果有哪里讲的不明白可以在评论区讨论 需要资源的可以留下邮箱 到时候会发给你。NVM安装管理node.js+配国内镜像源+配置环境变量 -优快云博客。2.首先 在首页上新增了一段动态字符。目前完成了一半 代码明天补发。是动态的一个一个跳出来的。2.其次改变了色调颜色。

2025-05-27 22:16:40 812 31

原创 NVM安装管理node.js+配国内镜像源+配置环境变量

链接: https://pan.baidu.com/s/1TUVqGIU300B4yxzzjIB1mA 提取码: cmfk。安装新版本(这个地方可能需要挂梯子 要不然下载不下来)通过网盘分享的文件:nvm-setup.exe。--来自百度网盘超级会员v5的分享。2.双击安装(最好不要装C盘)

2025-05-26 21:04:45 1380

原创 JavaCloud《学成在线》 学习笔记5

mysql为了避免无限递归默认递归次数为1000,可以通过设置cte_max_recursion_depth参数增加递归深度,还可以通过max_execution_time限制执行时间,超过此时间也会终止递归操作。前置已经学完了 JavaWeb 和 SpringColud的相关课程,目前做过了苍穹外卖项目,想做一个微服务架构的项目,此贴将记录下学习JavaCloud遇过的坑和解决步骤,欢迎大家讨论。使用了 自连接(Self-Join)技术,通过同一张表的两次关联查询来展示树形结构数据(如分类层级)。

2025-05-26 15:36:07 870

原创 朴素贝叶斯-小白也可以看懂的机器学习算法

本教程 基于周志华老师的《机器学习》来写的,基于自己的理解和自己举的一些小例子,希望小白可以快速学习和理解机器学习算法。PPT和相关代码放到评论区了需要自取。贝叶斯决策论(Bayesian decision theory)是在概率框架下实施决策的基本方法。核心在于利用已知的等 )以及,来选择最优的,也就是最优的类别标记。在这先补充一下先验概率、后验概率的基本概念:先验概率指在不考虑任何新信息(样本数据 )的情况下,根据以往经验或常识,对事件发生可能性的一个预先估计。

2025-05-25 17:17:19 1571 1

原创 JavaCloud《学成在线》 学习笔记4

通过script标签的src属性进行跨域请求,如果服务端要响应内容则首先读取请求参数callback的值,callback是一个回调函数的名称,服务端读取callback的值后将响应内容通过调用callback函数的方式告诉请求方。出这个提示的原因是基于浏览器的同源策略,去判断是否跨域请求,同源策略是浏览器的一种安全机制,从一个地址请求另一个地址,如果。由于服务端之间没有跨域,浏览器通过nginx去访问跨域地址。三者全部一致则不属于跨域,否则有一个不一致就是跨域请求。由于主机不同,是跨域。

2025-05-24 19:44:40 848

原创 JavaCloud《学成在线》 学习笔记3

指定数据库类型为 MySQL,分页插件会根据不同的数据库类型生成相应的分页 SQL 语句。:分页插件,是 MyBatis-Plus 提供的内置拦截器之一,用于实现物理分页功能。{"code":"202001","desc":"审核未通过"},

2025-05-23 22:40:36 521

原创 JavaCloud《学成在线》 学习笔记2

OpenAPI规范(OpenAPI Specification 简称OAS)是Linux基金会的一个项目,试图通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发过程,目前版本是V3.0,并且已经发布并开源在github上。接口接收两部分参数,一部分是分页参数,它是通过http url传递key/value串,另一部分是业务查询条件,通过http body传入json内容。应用场景:在电商商品列表页面,VO 除了包含商品的基本信息外,还可能包含折扣率、评分等计算后的展示数据。

2025-05-22 22:16:50 889

原创 JavaCloud《学成在线》 学习笔记1

整个项目分为三大类工程:父工程、基础工程 和微服务工程。欢迎交流讨论,每天高强度在线,第一次写博客,有问题也请大家多多批评。今天也要加把劲学习!(ps:如果用的是默认虚拟机的话,防火墙是关闭的,可以使用以下命令查看虚拟机的状态)数据和索引分离:分别存储在 .MYD(数据)和 .MYI(索引)文件中。全文索引:支持全文搜索(5.6 版本前唯一支持全文索引的引擎)。包括:内容管理服务、媒资管理服务、搜索服务、订单支付服务等。每个微服务工程依赖基础工程,间接继承父工程。本身为Pom工程,对子工程进行聚合管理。

2025-05-22 11:22:06 1253 1

空空如也

空空如也

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

TA关注的人

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