- 博客(64)
- 资源 (3)
- 收藏
- 关注
原创 linux企业实际工作常用命令
sftp ip@user 登录其他服务器 mget *将当前目录下所有文件复制到本地服务器 mput *将当前目录下所有文件推送到ftp的服务器 lcd dir切换本地服务器当前目录 lpwd查看本地服务器当前目录。vi xxx.log shift+G跳转文件尾部 shift+?从后往前检索关键字 shift+/从前往后检索关键字 :q结束并关闭文件。
2024-09-26 20:16:39
141
原创 Spring源码-AOP
注:想要向spring容器注入自己的类对象除了这种方式外,还可以通过bean定义后置增强处理器BeanDefinitionRegistryPostProcessor进行注册。
2024-07-29 23:05:47
209
原创 高级及架构师高频面试题-基础型
主要用于存储对象实例,包括程序中创建的对象以及Java虚拟机自动创建的对象。5、程序计数器(Program Counter Register):用于保存当前线程的行号,即线程执行的字节码的行号指示器。每个线程在创建时都会创建一个私有的栈,用于存储局部变量、操作数栈和方法出口等信息。与栈类似,用于存储执行本地(native)方法的数据。它是Java虚拟机内存模型中的一部分,用于支持本地方法的调用。4.本地方法栈中JNI(即一般说的Native方法)中引用的对象。栈(栈帧中的本地变量表)中引用的对象;
2024-07-26 17:50:46
1506
2
原创 高级及架构师高频面试题-应用型
2)增加slot槽点字段(假设在0-1000进行随机),每个节点在查询执行任务之前先计算开始槽点和结束槽点(先通过服务发现查询当前存在的所有批量节点(假设5个)并排序,找到自己的序号(假设为3),开始槽点=1000/5*(3-1),结束槽点就等于开始槽点+1000/5),然后带上槽点条件进行查询。1)每个节点捞取当前待执行任务状态的任务,如果为0则return,如果不为0则将任务状态变更为执行中,如果更新的条数和查询的条数相等,则执行,否则自调用。2)如果使用的redis,则需要带上过期时间并支持续约。
2024-07-25 23:54:04
889
原创 Eclipse快速开发常用功能(持续更新中)
1、ctrl+o:查看类的属性和方法,再次按下组合键可以查看包含继承的父类属性和方法在内的所有属性和方法;2、ctrl+t:查看类或者接口的所有实现类,或者右键open hierarchy打开窗口查看。3、ctrl+alt+h:查看类或者方法在哪些地方有调用。5、ctrl+shift+i:断点调试时候单行代码执行器。4、ctrl+H:全局搜索。
2024-07-25 01:53:25
261
原创 SpringBoot的启动原理
finally {如果推断为Servlet,则ApplicationContext的实现类为ServletWebServerApplicationContext,
2024-07-25 01:50:11
1005
1
原创 Spring-一个接口拥有多实现类-企业应用场景
由于java的多态特性,往往一个接口有多种具体的实现,传统的做法是在一个实现类中新建不同方法。但这种做法既不符合OOP的思想,而且当每种实现逻辑都相对复杂的时候,会让我们的代码显得臃肿和凌乱,当我们只需要使用其中一种实现的时候,没有必要去关心其他实现,所以正确的做法应该是各自封装各自一体。当我们在spring中使用多个实现类实现同一个接口的时候,那么问题来了,我们怎么选择我们需要的实现。
2024-07-24 17:48:24
697
原创 笔试题:参数引用传递
1、值传递:基本数据类型除String外为值传递,String虽然为引用类型但属于不变对象,所以也类似值传递,函数内部对局部变量的操作不会对原变量产生影响。2、引用传递:将参数的地址或引用传递给函数,函数内部对局部变量的操作会影响原变量的值,但是局部变量如果重新指向其他地址,则后续操作不会再影响原始数据的值。
2024-07-20 16:45:20
175
原创 Node.js基础
JavaScript运行时环境(Runtime Environment),能使JavaScript运行在服务端的运行环境。简单地讲,Node.js可以使JavaScript像python/java一样在机器上运行,而不依赖浏览器。
2024-07-19 00:49:31
310
2
原创 第三篇 Vue项目目录结构介绍
├── .vscode //vscode配置,不用理会├── node_modules //项目依赖,npm install命令执行后自动生成├── public //公共资源存放├── src //源码├── tests //选装:测试模块├── .gitignore //git工具忽略版本,不用理会├── index.html //入口html页面├── package.json //项目信息描述文件,包依赖信息等├── README.md //项目说明文档。
2024-07-18 23:17:46
391
原创 第一篇:VUE介绍
就其核心而言,HTML 是一种相当简单的、由不同元素组成的标记语言,它可以被应用于文本片段,使文本在文档中具有不同的含义(它是段落吗?这个模块为你掌握 CSS 的过程提供了一个温和的开端,包括它如何工作的基础知识,语法是什么样的,以及如何开始使用它来为 HTML 添加样式。是一款用于构建用户界面的js框架,基于html、css、js构建,提供了一套声明式的、组件化的编程模型。1)渐进式框架:使用者可以根据需要引入框架的部分功能,逐步增强,而不是一开始就引入全部功能,增加了框架使用的灵活性。
2024-07-18 19:22:55
1036
原创 Spring源码-读取XML文件配置信息
4、parseBeanDefinitionElement()方法:解析到BeanDefinitionHolder,BeanDefinitionHolder.getBeanDefinition()就得到BeanDefinition。3、registerBeanDefinitions方法调用parseBeanDefinitions方法进行bean标签doc元素解析。2、doLoadBeanDefinitions()方法:1)读取到Doc里面;2)解析Doc注册为BeanDefinition。
2024-07-17 23:07:54
559
原创 SpringBoot项目架构实战之“网关zuul搭建“
第三章网关zuul搭建前言:1、主要功能 zuul主要提供动态路由(内置ribbon实现)和过滤(可以做统一鉴权过滤器、灰度发布过滤器、黑白名单IP过滤器、服务限流过滤器(可以配合Sentinel实现))功能;2、和spring cloud GateWay的区别 属于两个不同开源组织提供的网关解决方案。spring cloud GateWay使用非阻塞API,内置限流过滤器,支持长连接(比如websockets),在高并发和后端服务响应慢的场景下比Zuul...
2024-07-10 23:38:21
1418
1
原创 千奇百怪的动态规划
对于动态规划,正常人容易思维定势,一上来就拿每个dp元素直接用来代表自己想要的结果,很多算法题对于这样的思路根本就是死路,本文章前期主要收集各种各样非常规思路的动态规划算法题(中等及以上难度),后期进行动态规划思想提炼和此类算法题的解法思路总结。
2024-06-29 01:12:48
525
原创 使用递归时的几种优秀处理手法(持续更新中,欢迎评论补充)
遇到出现同样的参数多次递归调用时,可以添加记忆缓存,以空间换时间。原理说明:1、如下面案例中的递归,调用时每次都从n执行到0(n一次衰减),则可能存在n-1的阶乘次重复参数调用,这里将重复部分都缓存起来,达到了跟动态规划类似的效果。下面的力扣案例,没加缓存记忆会执行超时,增加后顺利通过。给你一个整数n和一个二维数组,其中表示这个要求中的末尾下标和的数目。整数数组nums中一个下标对(i, j)如果满足以下条件,那么它们被称为一个i < j请你返回的排列perm的数目,满足对的都有恰好有cnti。
2024-06-26 03:14:25
868
原创 递归的通用代码结构剖析【待持续补充】
递归调用一般有下面三个部分的结构: 终止条件,如:if(){ return (void/int/boolean)}引用变量加工,如dp[i][j] = true;说明:1、该处代码逻辑递归层次越上方的越先执行到,即每次执行前先判断或者加工的代码逻辑。2、如果递归在for循环里面进行调用,终止条件为:最后一次调用时不再走到递归调用代码,可能场景: 1)、for循环最后一次递归时循环0次; 2)、for循环里面增加了if条件,只有满足if条件的才会进行递归调用,即最深一
2024-06-22 02:40:04
325
原创 工作中不常用到的好用的数据结构
LinkedList:同时具有list集合、双端队列、栈、队列的功能,对应相应的api方法;LinkedHashSet:插入按插入先后顺序,重复值直接丢弃,不会影响前面已经存在的顺序;LinkedHashMap():key插入按key插入先后有序;TreeMap():Key插入按key自然顺序;HashSet:插入后无序,性能好;TreeSet:插入按自然排序;
2024-06-17 19:23:49
97
原创 学习几个比较方便java1.8 API
/ list.toArray(new String[list.size()]) 集合转数组。// String.join(" ",数组) 数组转字符串。
2024-06-15 04:18:56
88
原创 LinkedList双端队列的方法
add()/remove():添加到队尾/从队头删除。offer()/poll():添加到队尾/从队头删除。push()/pop():添加到队头/从队头删除。
2024-06-12 00:30:32
172
原创 本地代码加入到gitee远程仓库管理
git config --global user.name "用户名"git config --global user.email "邮箱"git remote add origin 仓库地址.git。git remote add origin 仓库地址.git。
2023-06-04 18:25:06
147
原创 git学习工具推荐
可以通过gitee首页在线学习,提供关卡git命令演练,通过练习可以几乎掌握git的所有操作,并且图形化的视图更便于对git命令的理解;
2023-05-27 16:10:40
378
原创 学习方法论
所以导致老师莫名其妙,为什么说了那么多次学生总是不听自己的感觉自己跟没说一样。比如数学的1,2,3数字,这都是一种创造的社会规则是需要死背下来的没什么道理可言,再比如物理的一些基础公式是通过实验证明出来的也是需要死记硬背的。我想说的是,其实都是因为没有get到正确的方法。首先,对于中国的传统义务教育而言,未成年大多还很难真正形成影响自己学习的兴趣爱好,他们更喜欢更感兴趣的往往是他们擅长的学科,因为擅长因为能学懂所以越学越有兴趣,但大部分偏科生最后也会彻底沦为差生,因为偏科部分打击了学习热情。
2023-05-18 14:24:48
125
原创 git revert与reset
revert是恢复还原的意思,revert操作只会抹除指定提交记录,不会导致后续提交的commit记录消失reset是重置的意思,reset会重置到指定节点,后续提交记录会被抹去,需要谨慎操作。实际工作场景:某未到投产时间的业务分支被错误合并到master,发现后做了revert操作。等到后续需要合并到master的时候发现会出现冲突和无代码改动两种异常情况导致代码丢失。
2023-04-17 19:58:09
378
原创 Netflix动态配置管理
config发生变更时,比如set动作时会调用fireevent方法,然后会遍历listenners集合去执行listenner的configurationchanged方法,然后会走到expandedconfigurationlistenneradapter的重写方法,里面注入dynamicproperty的静态内部类dynamicpropertylistenner,然后去执行所有的回调方法。可以通过以下方式实时更新config,更新config后,config会通知已注册的监听器。
2023-03-22 17:53:57
761
原创 静态内部类
内部类可以直接访问外部类属性和方法,与外部类有很大的关系且对外提供服务可能性很小不必另外新建java文件。内部类可以看做外部类的功能补充,可以独自继承或实现与外部类不同的类或接口,避免了单继承的尴尬。静态内部类在外部类加载时并不会加载,只有当真正被使用到的时候才会被加载,因此可以用来实现单例。静态内部类可以同外部类一样被单独使用,不受外部类影响。2.为什么使用静态内部类。1.为什么使用内部类。
2023-03-22 14:38:05
176
原创 监听器、过滤器、拦截器
拦截器是强制代理和隐藏式代理的实践,主要作用是对真实被调用功能做增强处理。监听器是观察者模式的一种实践,由被监听者者维护和通知监听对象;过滤器是对请求做入口筛选,剔除掉不合规请求。
2023-03-22 13:54:52
109
原创 压力测试可插拔挡板实现
1.@configuration+@conditionalonproperty决定配置类是否生效,配置类如果生效,则配置类中的类实现initializingbean和applicationcontextaware,重写afterpropertiesset方法去将所有带自定义注解的类实例化到容器中。2.自定义注解类配置在挡板类上,加上@primary注解,使得一旦被纳入容器则会被优先使用。
2023-03-22 10:03:06
329
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人