自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ostkakah的博客

专升本学长

  • 博客(115)
  • 收藏
  • 关注

原创 若依使用(二次开发)

将生成的前后端代码复制到我们的前后端代码中。将main中的文件放到子项目中的main中,将vue中的代码存放到前端项目的views中。2.将设计好的数据库导出成sql文件,导入到对应的数据库中,启动若依项目并执行代码生成。将子项目的依赖添加到主pom.xml中或者添加到rouyi-admin的pom中。1.创建子项目到RouYi-springboot中,添加对应的依赖。,并将当前子项目的依赖添加到RouYi-admin中。添加到新建子项目中的pom.xml中。填写对应的参数,生成修改后的文件。

2024-10-05 17:35:18 290

原创 Error running Application.Command line is too long

本质上就是执行启动类Application的时候,执行的指令太长了,所以运行失败。3.勾选 Shorten command line。1.打开Edit Configuration。4.选择classpath file。2.点击Modify options。

2024-09-25 17:08:50 198

原创 Circular dependency between the following tasks(gradle循环依赖的问题)

目前公司项目主要使用gradle而不是maven,所以对gradle的使用不是很清楚,遇到这个问题的时候一直在晚上查资料,但是解决方案基本都是安卓的,后续先前辈请教了一下,才找到解决方案。

2024-09-25 17:02:45 252

原创 面经学习(上海鑫玥轩信息)

Hash结构中,使用大key存储课表Id,课表用来关联userId和课程的Id,使用小key存储节Id,value存储观看位置的数据,在每次请求进来后直接修改Hash中的数据,并且每次发送一个延迟消息,使用Redis的死信发送一个延迟15秒消息,并且也是当前的节点去监听该消息,监听到消息后,使用监听到的观看位置和当前在Hash结构中的观看位置进行比较,如果发现二者的相同,说明在这15秒内没有再次进行观看了,这个时候就去修改数据库。反之,如果不相同的话,说明此时用户还在进行观看,我们就直接丢掉消息。

2024-09-22 22:31:04 348

原创 CQRS模型解析

CQRS中文意思为命令于查询职责分离,我们可以将其了解成读写分离的思想。分为两个部分 业务侧和数据侧,业务侧主要执行的就是数据的写操作,而数据侧主要执行的就是数据的读操作。当然两侧的数据库可以是不同的。目前最为常用的CQRS思想方式为事件驱动。CQRS模型也是未来微服务形态的一个趋势。

2024-09-22 22:23:56 506

原创 gradle入门

在项目中的使用还是和maven非常相似的,我们需要修改依赖的版本号或者修改插件都需要到build.gradle文本中修改。(例如:group='xxx.xxx.xxx',version='0.0.1')明显我们会发现gradle的配置明显少很多,gradle将依赖的引入格式为 groupId:artifactId:version。(需要注意的时候,因为Gradle和idea存在兼容问题,所以最好使用6.8版本以上的Gradle)2.plugin的配置和dependencies还是比较相似的。

2024-09-17 22:05:47 427

原创 面经学习(hbkj实习)

这次面试算是对我基础知识空缺的排查,有很多小知识点是我没有去复习到的,也是一次比较愉快的面试。

2024-09-05 15:30:59 761

原创 面经学习(越亮传奇实习)

的实习项目主要就是做C端的在线教育项目,并且呢,它采用的基于alibaba那套落地的微服务方案。可能也是因为我是实现生的源固,我没有负责黄金链路,从用户登录到用户下单再到用户观看视频的整个流程,我主要负责的就是负责辅助模块的开发。那我给您介绍一下我记得比较清楚的难点吧。

2024-07-19 15:51:59 652

原创 面经学习(厦门安全狗实习)

我的实习项目主要就是做C端的在线教育项目,并且呢,它采用的基于alibaba那套落地的微服务方案。可能也是因为我是实现生的源固,我没有负责黄金链路,从用户登录到用户下单再到用户观看视频的整个流程,我主要负责的就是负责辅助模块的开发。那我给您介绍一下我记得比较清楚的难点吧。

2024-07-19 14:42:27 1034

原创 面经学习(杭州实在智能实习)

当发现B中需要依赖A,此时将使用A的ObjectFactory生成A的代理对象,并将A的代理对象存放到二级缓存中,将A注入到B中,将完整的B存放到一级缓存中,此时回溯,将完整的B注入到A中,最终解决三级缓存的问题。Spring的实现方式主要就是使用Aop的来实现的,使用环绕通知,在执行方法的时候,开启事务,并对执行的方法使用Try/catch,如果捕获异常的话就进行回滚,如果执行完方法后就进行提交。解决这个问题的主要方案就是:增加我们的消费者个数,加快消费者的消费速度,对我们消息队列进行扩容。

2024-07-18 23:35:55 821

原创 Java实习手册(小白也看得懂)

距离俺发布的学习路线已经六个月了,那我给小伙伴的学习周期是四五个月左右,我相信大多的小伙伴已经学习的差不多了。正好赶上暑期实习的阶段,在暑期找到实习就成为暑期的头等大事。实习经验在校招的起到决定性的作用,所以我们需要认真准备。

2024-07-05 22:46:10 2286 8

原创 在线教育实习经验总结

主要就是服务于考研学生培训的微服务C端项目,主要分前台和后台,其中的黄金链路就是从用户登录到购买课程再到课程观看的流程。那在这个过程中还存在一些辅助模块来提高用户的使用体验,包括问答,点赞,热门榜,积分及优惠劵模块,我只要就是负责对辅助模块的开发。

2024-05-16 18:25:59 1169

原创 物流项目实习话术(家政,二手回收项目通用)

我的实习项目呢,他是基于微服务框架体系的物流项目中,主要负责人,货,车三者之间的调度关系。主要的黄金链路就是用户下单 -> 快递员揽收->通过一系列的调度完成商品运单的运输->再到快递员派送商品->用户签收的整个流程。主要的模块主要就是调度模块,通过调度模块来异步的调度其他模块,包括运单模块,订单模块,路线规划模块等等。这个模块是物流微服务中最重要的就是调度微服务。其中主要就是包含订单转运单,运单合并,计算运力,司机出入库,快递员派件等流程。那我就按执行流程给您介绍一下调度微服务模块,您看行吗?订单转运单。

2024-05-01 17:39:19 1214

原创 面经学习(上海某小厂)

难度中等,拦截器和过滤器的问题之前没有遇到过,海还有免登录过滤路径问题忘记了,算是学到了。

2024-04-21 19:17:49 839

原创 面经学习(宁波某小厂)

很简单的面试题,纯纯的八股文,项目没有问。就是异常有哪些分类这个知识点忘记了。

2024-04-20 23:31:47 841

原创 面经学习(上海旭千实习)

难度中等,Java的基础部分有点忘了,还有那个token的实现流程也有点给忘了,项目问的比较少,还是要注重Java基础部分的复习。

2024-04-19 23:11:10 1084 1

原创 面经学习(众智宏图实习)

难度还是有的,中等难度吧,可能是因为项目使用的是物流项目,该项目本来就比较庞大难度比较高,流的八股文我真的是一点不会,还需要加强,reidis的多路io复用模型没有深问,要是问了就寄了,这个模型的底层太就没有复习了,这次面试题差不多就是 50%项目+50%八股文。

2024-04-13 20:03:30 928

原创 面经学习(湖北航信实习)

比较简单的面试题,项目基本不问,全是八股文,mybatis中#{}和${}之前没有遇到过,算是长知识了。

2024-04-12 21:56:57 992 1

原创 面经学习(湖北地信科技实习)

很简单的面试题,八股文问得都比较浅,这次项目问得比较多,在mysql的索引失效中,数据分布影响导致的索引失效这一点比较深,能够讲出来的话,还是比较加分的。

2024-04-11 23:17:34 1041

原创 面经学习(北京商越网络实习)

比较简单的面试题,不知道 nacos和gateway这块有没有深问,如果深问的话,那难度就升级了。一直对io的八股文不感冒,io这块的知识还得加强,该面经最后一问我是没有如何思路的,算是长知识了欸。

2024-04-11 01:14:07 986 6

原创 在线影院项目话术(0.7w精选)

这个电影院项目不同于常见的基于会员限制用户观看范围的在线影院项目,主要就是按需购买片源来进行观看,用户就不会因高额的会员费而劝退。项目的主要实现就是:微服务的五大主键,数据库使用mysql,redis,中间件使用rabbitmq,xxl-job,工具使用skywalk和jenkins。项目的主要功能就是 片源的观看及购买及一些辅助用户的功能包括:签到积分,热门电源排行,优惠劵模块。简单的来说,用户登录并按规则下单->用户观看片源的整个流程。

2024-03-25 16:29:34 844

原创 在线教育项目话术(1W字精选)

我们考虑到此模块可能会存在高并发的场景,所以在原先涉及大量的DB操作旧方案上通过redis的数据结构和定时任务来优化。(面试官感兴趣就介绍优化方案)

2024-03-20 15:32:52 987

原创 Redis的BitMap的使用

Redis的Bitmap不是一个独立的数据结构类型,而是基于字符串(String)类型实现的一种功能 ,存储的是二进制的文件,布隆过滤器就是基于BitMap实现的。

2024-03-06 16:53:12 450

原创 DelayQueue使用手册

DelayQueue是Java中的一个并发容器,它实现了Delayed接口,用于存储具有延迟时间的元素。DelayQueue内部使用PriorityQueue来存储元素,并根据元素的延迟时间进行排序。延迟时间指的是元素需要在指定的延迟时间之后才能被取出。目前主流的延迟对应的方案为:使用mq的延迟队列。而DalayQueue是java自带的延迟队列,我们可以根据需求去选择。使用创建一个队列元素去实现 Delayed 接口。@Data//携带的数据//延迟时间//元素在队列中的剩余时间。

2024-02-29 16:17:00 285

原创 Leetcode 热门百题斩(第三天)

针对leetcode的热门一百题,解决大多数实习生面试的基本算法题。通过我自己的思路和多种方法,供大家参考。

2024-02-01 16:24:32 483 1

原创 Vue3快速使用手册

在我们需要保证响应式的数据赋值上使用ref函数,并且操作其中的vlaue属性,主要就是对value进行操作。

2024-01-24 23:52:20 1451

原创 mysql高级使用教程

页分裂:主键底层是存到数据页上,一遍主键是自增的,所以会进行顺序存储。但是当数据不按顺序的时候会,数据在找到对应的位置会会将后百分之五十的数据存储到新的页上,如何将新的看数据存储到对应的位置上,最终在调整页的位置。页合并:但主键进行删除的时候,会先将要删除的数据进行标记,当达到阈值(MERGE_THRESHOLD)时就会进行删除,并判断前后侧的页是否能合并,能就进行合并,最终出现页合并。因为二级索引中的数据就会主键,当二级索引多的情况就会占用大量的空间,并在数据的读取的时候需要大量的io操作。

2024-01-15 20:35:40 1294

原创 SpringSecurity深度学习

spring Security是什么?是一个强大且高度可定制的身份验证和访问控制框架,用于保护基于Spring的应用程序。它是Spring项目的一部分,旨在为企业级系统提供全面的安全性解决方案。一个简单的授权和校验流程检验流程总流程1.自定义授权异常处理器和校验异常处理器。校验异常处理器//校验失败异常处理器@Component@Override//创建统一的返回对象,设置到response中。

2024-01-06 16:45:39 648

原创 前后端项目统一返回类型(配置即用)

此模板并非定死,可以根据前端的规则进行相应属性名的修改,及根据业务的实际情况添加或修改其中的属性。

2024-01-03 23:33:40 560

原创 jwt工具类(配置即用)

主要使用就是生成和解析的方法,我们可以在此方法上实现方法增强的相关操作。

2024-01-03 23:27:42 596

原创 网盘项目话术(0.5w字精选)

该项目主要就是对文件的操作,file表,file_share表。file表主要字段:id,用户id,父级目录id,文件的地址,文件的封面图片地址,创建和修改时间。file_share表主要字段:id,文件id,用户id,有效类型,创建和失效时间(用于定时任务)。基于RDAB的五张表:用户信息表,角色表,权限表,用户角色关联表(多对多关系),角色权限关联表(多对多关系)。基础设置表:id,邮箱标题,邮箱内容前缀,默认初始化空间大小。单点登录->双token三认证(迭代方案)

2023-12-28 21:59:28 1337

原创 物流项目话术(1.5w字精选)

用户在【用户端】下单后,生成订单系统会根据订单生成【取件任务】,快递员上门取件后成功后生成【运单】用户对订单进行支付,会产生【交易单】快件开始运输,会经历起始营业部、分拣中心、转运中心、分拣中心、终点营业部之间的转运运输,在此期间会有多个【运输任务】到达终点网点后,系统会生成【派件任务】,快递员进行派件作业最后,用户将进行签收或拒收操作

2023-12-19 22:42:57 2057

原创 线程池基础参数和执行流程

3.如果阻塞队列满了,就判断线程的总数是否大于核心线程的总数,如果大于,创建救急线程去执行任务。(当救急线程和核心线程处于空闲的时候就会去执行堵塞队列中的方法)DiscardOldestPolicy:丢掉在堵塞队列中存储最久的任务,将新的任务存储到队列中。1.在新的任务进来后,先判断核心线程是否已满,如果没满,直接创建个核心线程去执行任务。2.如果核心线程满了,就判断阻塞队列是否已满,如果没有满,直接存储到阻塞队列中。5.BlockingQueue:阻塞线程,存储哪些没有被核心线程执行的任务。

2023-12-07 11:29:07 564

原创 Synchronized关键字的底层原理

类是轻量级锁,但是在做锁的重入的时候不会使用CAS指令,而是直接判断thread的id是否相同,相同就表示没有竞争。2.如果锁记录中的MarkWord的值为null,说明这是一次锁重入操作,直接将锁记录中的指向对象的地址设置为null。3.如果锁记录中的MarkWord的值不为null,我们就通过CAS指令将锁对象中的MarkWord恢复成无锁状态。重量级锁主要使用在线程竞争的时候,且重量级锁涉及进程的上下文切换,效率比较低下,实现的,在对象的对象头中存储了MarkWord存储的就是Monitor的地址。

2023-12-04 12:02:14 585 1

原创 MVCC详解(小白也看得懂)

MVCC:多版本并发控制。

2023-12-02 16:38:18 531

原创 HashMap源码解析

4.在链表的插入中,我们通过循环找到链表的尾部,并创建一个节点,如果个数大于等于8则直接将链表转换为红黑树,插入值的链表中存在key相同的值则直接进行覆盖。3.如果存在的key的值和传入的key的值相同的话就直接进行覆盖。如果不相同并且节点是红黑树的时候就做红黑树的插入。反之则做链表的插入。1.判断判断HashMap中数组的长度是否为0,如果为0就使用resize方法进行扩容,且第一次扩容的大小为16。put方法需要返回对一个的hash值和key和value。默认的容量就是16,装载因子为0.75。

2023-11-29 15:11:06 475

原创 ArrayList的源码解析

3.参数构造 (传入一个集合): 将集合转为数组类型并判断其长度,如果长度小于0则直接报错,反之,判断集合的类型是否为ArryList类型,如果是则直接赋值,反之,调用Array.copyof方法得到对应的ArrayList进行赋值。2.参数构造(初始化长度):如果长度大于0直接创建一个对应长度的Object数组,如果长度为0则直接返回{}。当第一次添加数据的时候,此时ArrayList中的值为为{},扩容的长度就是10。如果新的容量大于当前的容量就进行扩容,反之则不扩容。1.无参构造:直接返回一个{}。

2023-11-27 21:14:51 510

原创 Java八股文(急速版)

单个redis节点的并发能力是有限的,所以为了提高并发能力,我们需要搭建redis集群,就比如:主从复制。主从复制的流程主从复制主要分为:全量同步和增量同步。全量同步:在salve请求数据同步的时候会携带application Id和offset,如果master判断出applid和自己的不一样,就认为slave是第一次进行同步,所以会进行全量同步。

2023-11-20 23:29:34 655

原创 gittee启动器

很多小伙伴反馈不是使用gitee,不会寻找好的项目,在拿到一个项目不知道从哪里入手。鼠鼠我呀就是宠粉,中嘞,老乡。整!!!

2023-11-18 22:15:29 705

原创 2024最新Java八股文(完整版)

单个redis节点的并发能力是有限的,所以为了提高并发能力,我们需要搭建redis集群,就比如:主从复制。主从复制的流程主从复制主要分为:全量同步和增量同步。全量同步:在salve请求数据同步的时候会携带application Id和offset,如果master判断出applid和自己的不一样,就认为slave是第一次进行同步,所以会进行全量同步。

2023-11-10 15:39:09 3836

链路追踪的Skywalking的探针

skywalking-agent

2023-10-26

ffmpeg-2023-04-17

ffmpeg本体

2023-07-31

空空如也

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

TA关注的人

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