自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 问答 (1)
  • 收藏
  • 关注

原创 小红书实习笔试java第二题

特殊的01背包 想要求到达价值n的 拿取物品最少数 但是这个物品可以取或者不取 或者取一半 比如 1 2 3 4 10 target为8 返回2 解释:可以3全拿 10拿一半 这种情况最少。第一个题不说了 是我基础问题 需要用到BigDecimal 套了一个炉石传说的背景 在笔试时候看了好久源码 也没想起来怎么写。这里记录一下第二个题 第一反应就是01背包问题 但是太紧张了 最后用的hashMap做的 今天重新想了一下 写了出来。第三个题没看 就结束了。

2024-03-30 13:56:09 219

原创 pip实在是安装不上 换源也不行

解决办法:直接去源中或者其他地方下载文件 whl或者tar都行。然后pip后面的包替换为本地的包的位置。

2024-03-29 10:39:12 115

原创 Spring的IOC

什么是IOC容器?Spring通过IOC容器来管理所有java对象的实例化和初始化,控制对象与对象的依赖关系流程:配置文件或者注解标注定义bean的信息 使用BeanDefinitionReader进行读取IOC获取Bean的定义信息后 使用BeanFactory工厂+反射的方式来初始化对象依赖注入DI:Spring对象创建过程中 将对象的依赖属性通过配置进行注入第一种 set注入第二种 构造注入。

2024-02-27 20:06:08 791

原创 Spring框架的从新学习

1.创建工程因为是Spring6的工程 因此需要jdk171.创建maven父工程2.创建子模块3.引入依赖</</</</</</</</4.创建类User5.根据spring要求创建配置文件需要表示想要创建的bean的全路径名和标识名</</7最终测试创建容器 根据bean标识获取对象 最后使用spring是通过全类名反射的方式来利用空参构造器创建对象容器的实际为一个map(String,beanDefinition)

2024-02-25 16:04:26 232

原创 mysql进阶知识

存储引擎是基于表的 是存储数据 建立索引 更新与查询技术的实现方式在创建表时可以指定 默认为innodb (高性能 高稳定性)生成文件为idb表文件不同引擎比较事务性要求高的用innodb 适用于核心数据读和插比较快的是myISAM 事务要求不能高 可以使用 mongodb替代 适用于非核心数据快 数据存在内存中 临时缓存的MEMORY 可以使用redis替代。

2024-02-24 11:02:59 710

原创 redis 相关知识

缺陷1:可能因抛异常导致未删除key,从而导致死锁解决方法:try——finally 进行环绕缺陷2:可能在执行过程中服务器之间宕机,从而导致死锁解决方法:设置过期时间缺陷3:执行业务时间超过设置的过期时间,导致后加的锁 被之前线程给锁删除:使用UUID作为value 只有值对上才对锁进行删除小坑:可能在比对相同时恰好过期 需要保证原子性:锁续命机制 看门狗策略 设置一个守护线程给过期时间进行续命redisson框架。

2024-02-22 16:50:21 367

原创 2024年2月21日小记

今天主要刷了三个力扣题目,顺便记录一下昨天刷的这几个题目还挺超出我能力范围的。

2024-02-21 16:56:26 330

原创 第一次部署程序小记

直接maven的 jar命令 ,那么在运行时就会显示缺少主函数巴拉巴拉的,尝试了大部分方法都不行。使用install插件的话显示依赖缺失。就是项目依赖于一个公共模块 ,但是这个公共模块无法先打包 会报错 最后的解决方案是 搜到了 直接运行的jar包与运行的jar包并不相同 ,需要不同的jar包 引入下面的依赖就行

2024-01-30 21:38:11 181 1

原创 如何在java项目中生成验证码

主要流程是,1)前端生成一个标识字段。2)后端生成一个验证码和相应的图片3)然后将标识作为key,验证码作为value存入redis中代码主要包含工具类 和 controller层代码。

2024-01-27 13:54:57 281

原创 加锁方案的演进

在秒杀场景中锁是必不可少的,用于解决超卖问题。

2024-01-25 20:46:46 122

原创 分布式事务的使用

2)如果全局异常处理中包含了seata的事务,需要在全局异常处理中将其排除,目的是让seata感知到报错进行回滚。4.使用AT模式,因此数据库需要引入undo_log的sql表。但是由于是不同程序之间的事务,通常的做法是使用代码进行补偿。在分布式程序中,需要使用事务的场景,在失败时需要回滚。相关信息可以自己修改 比如train。而用seate来完成分布式事务。使用用例测了一下好用的很!1)在需要开启事务上加上注解。1.安装service。我直接docker部署。

2024-01-21 15:53:03 348

原创 redis击穿 穿透 雪崩

一个热点key失效导致大量请求直接访问数据库解决方案:1.在失效前主动更新缓存,可以使用定时任务等2.如果redis崩了的话,可以加分布式锁,只让一个请求拿到锁,其他请求快速失败。

2024-01-20 22:55:18 349

原创 mybatis缓存和redis 做 springboot内置缓存

mybatis一级缓存需要在事务里面才会开启,如下代码,没有加事务注解 那么真的会查两次,缺点:如果在查两次的中间 进行增删改 就会有误差默认开启 可以在配置文件中关闭如过加上事务注解 在一次请求里就只会查一次。

2024-01-20 22:32:41 315

原创 Springboot定时任务的两种方式

第一种简单,适合小型单体项目跑批,第二种适合分布式项目。

2024-01-08 22:10:27 352 1

原创 本地线程传参(登录用户id)以及全局异常处理

包括自定义异常类,和枚举类/***/this.e = e;return e;this.e = e;@Override/***//** 自定义异常枚举* */MEMBER_MOBILE_EXIT("手机号已注册"),MEMBER_MOBILE_NOT_CODE("请先发送验证码"),MEMBER_MOBILE_CODE_ERROR("验证码错误");

2024-01-06 15:05:37 348 1

原创 使用mybatis官方的代码生成器生成持久层代码

生成的这个domain作用约等于where。直接双击maven里面的插件就好啦。

2024-01-03 22:43:37 364 1

原创 java后端日志设置

【代码】java后端日志设置。

2024-01-03 22:21:38 385 1

原创 JWT生成与过滤器统一校验

最简单的使用jwt进行校验jwt的好处就是不用存储起来直接通过算法进行解析,通过设置的密码就可以判定是不是咱们发布的jwt,主要是可以通过hutool的工具包二次封装后的程序进行撰写程序如下。

2024-01-03 22:08:13 331 1

原创 2023.12.12与13日收获

LRU缓存实现的类似与一个HashMap的增强,增强的地方在于其维护的数目是固定的,当超过预订数量后,会淘汰最久没用的元素。官方题解更好的方式是使用hashmap外还维护一个双向链表,双向链表类需要自己创建,内部指定前一个和后一个元素,同时需要维护第一个和最后一个节点的指针,当有使用的元素放到第一位,当淘汰时,淘汰最后一位。最大值等于max(上一个数时的最大值×当前的数,当前的数,最小的值×当前的数)最小值等于min(上一个数时的最大值×当前的数,当前的数,最小的值×当前的数)自己写了一个链表的冒泡排序。

2023-12-13 22:38:08 13 1

原创 2023.12.11日收获

第一个题简简单单,就是异或^第二个题目之前做过用的快慢指针,但是这次的方法也很好,使用一个范围外的数字做标志就可以了。

2023-12-11 21:59:32 14 1

原创 2023.12.10日收获

第一题整体来说感觉不算难,但是要注意负值的影响,官方的题解很好,只返回大于零的数第二题主要是需要On来解题目,主要需要看每个数是不是起点,如果是的话,利用hash数组依次查看有没有下一个数。

2023-12-10 21:45:13 15 1

原创 2023.12.9日收获

目的:1)隔离加载类,可以加载好几套2)修改加载方式3)扩展加载源4)防止源码泄露手写一个类的加载器:继承classloader 重写findClass 返回defineClass@Override//转换为以文件路径表示的文件//获取指定路径的class文件对应的二进制流数据//自定义ClassLoader 内部调用defineClass()try {int len;

2023-12-09 21:07:20 15

原创 2023.12.8日收获

今日力扣刷题单调栈。

2023-12-08 22:39:05 19

原创 2023.12.7日收获

先用@value引入配置文件中的值,在使用@bean和@Configuration转化为组件bean对象bean对象之间可以通过参数的方式进行DI注入@Bean@Bean//赋值XML方式配置总结所有内容写到xml格式配置文件中声明bean通过

2023-12-07 22:59:59 26

原创 2023.12.6日收获

今天完成的题目分别为72编辑距离和75颜色分类编辑距离这个题目之前说其实遇到过,算法课也遇到过。动态规划,主要是需要知道这个dp数组的最好的意义,本题目的dp意义就是两个字符串之间的最短汉明距离,那么根据已知往下推的话就是:1.如果最后两个字母相等,则汉明距离不变,2.当不同时,就要寻找怎么操作到现在的状态使得两个字符串汉明距离最小,就是对一个字符按串增,删,改最小的距离加1。

2023-12-06 23:12:34 26

原创 HttpServletRequest作用

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息。这里的作用是ession身份校验。2.@PathVariable接收参数,参数通过URL传递,但是这个参数有没有都行。1.@RequestBody 提交表单数据,需要转化为实体对象。3.路径参数,无需注解,直接接受。

2023-11-09 20:16:02 20 1

原创 【如何自定义mininet拓扑并利用ryu完成性能测量(二)】

利用已知拓扑下发流表

2023-05-09 15:44:57 3

原创 【如何自定义mininet拓扑并利用ryu完成性能测量(一)】

描述拓扑的json示例mininet拓扑的读入。

2023-05-09 15:09:53 3

原创 如何在不知道服务器网卡名字情况下启用网卡

今天突然发现服务器的网卡少了一个。Ifconfig只有一个网卡lspci|grep -i ethernet可以看到两个网卡最后通过nmtui命令 查到了网卡叫什么

2022-09-07 22:55:17 65

空空如也

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

TA关注的人

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