java
cong_han
这个作者很懒,什么都没留下…
展开
-
Spring InvocationHandler源码
在上面的示例中,我们创建了一个ProxyFactory实例,并通过添加拦截器来定义如何处理代理对象上的方法调用。然后,我们使用工厂创建了一个代理对象,并调用其方法。实际上,这个方法调用会被拦截器捕获,并按照我们的定义进行处理。在这个例子中,拦截器会在目标方法调用之前和之后打印一些日志,以便演示拦截器的行为。方法,当代理对象上的方法被调用时,这个方法就会被触发。接口,这意味着你可以通过它来定义如何处理代理对象上的方法调用。是一个接口,它定义了如何处理代理对象上的方法调用。类来创建一个代理对象,并定义一个。原创 2023-12-24 23:56:20 · 538 阅读 · 0 评论 -
Spring DefaultListableBeanFactory源码分析
它主要通过使用Java的集合类来存储和管理Bean的定义、实例、作用域、后置处理器等信息。是 Spring 框架中非常重要的一个类,它提供了基础的 bean 管理功能,使得开发者能够专注于业务逻辑而不是底层的bean 管理。通过对它的源码分析,我们可以深入了解 Spring 的核心工作原理,从而更好地利用这个框架来构建企业级应用。接口,并提供了一些额外的方法用于注册和获取Bean的定义。它是 Spring 容器的基础,负责管理 bean 的生命周期、依赖注入等核心功能。键是 bean 的名称,值是。原创 2023-12-24 23:55:46 · 2178 阅读 · 0 评论 -
Spring handlerAdapter中的适配器模式
适配器模式是一种结构型设计模式,它的主要目的是将一个类的接口转换为另一个客户端所期望的接口,从而使原本由于接口不兼容而无法协同工作的类能够一起工作。在Spring Boot中,适配器模式常用于处理不同的请求和响应格式。接口是适配器模式的一个典型应用。它允许框架根据请求类型的不同,选择合适的处理器来处理请求。在Spring Web MVC中,原创 2023-12-13 02:24:25 · 554 阅读 · 0 评论 -
【三】分享记录,一些Redis分布式锁写法
首先自定义一个@RedisLock注解,注解的实现可参考我写的另一篇文章或自行搜索。代码如下(与使用ReentrantLock类似)原创 2023-03-23 11:27:53 · 129 阅读 · 0 评论 -
【二】面试问我Redis pipline
pipline的使用可以很大程度提高redis使用性能,在性能优化工作中经常使用;原创 2022-10-11 23:57:41 · 197 阅读 · 0 评论 -
【一】面试官问我Redis分布式锁的可靠性,嘿嘿嘿
Redis工作在主从集群模式(sentinel保证高可用),分片集群模式下,加锁成功但key没有同步到slave时发生主从切换;虽然主从 写是会从master写,读会从slave节点去,但依然存在这个问题;如果抢到锁的任务执行时间很短,绝对的小于锁丢失时间,那么理论上是可以忽略主上锁所述的锁丢失问题,在设计系统时,则关键的考虑因素是主从同步时效;问题:可能存在重复性加锁问题。原创 2022-10-03 15:03:09 · 345 阅读 · 0 评论 -
easyexcel写入ByteArrayOutputStream
【代码】easyexcel写入ByteArrayOutputStream。原创 2021-07-01 00:00:24 · 2979 阅读 · 1 评论 -
反射获取注解
saveLog方法保存操作日志到另一张表返回的对象注解获取登录Retention是注解的注解@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD)原创 2021-05-31 16:19:23 · 241 阅读 · 0 评论 -
Java获取当月最大天数&JS获取当月最大天数
单文件组件model.exports = { data: function() {} resolve: { alias: { 'vue$': 'vue/dist/vue.esm.js' } }}原创 2021-01-31 19:04:41 · 369 阅读 · 0 评论 -
intellij实用快捷键 包含Junit,git
ctrl+N查找接口的实现类:IDEA 风格 ctrl + alt +B原创 2020-04-27 12:59:49 · 810 阅读 · 0 评论 -
Java读取txt文件
FileChannel fc = FileOutputStream("data.txt", "rw").getChannel();.getChannel();.getChannel();.getChannel();.getChannel();.getChannel();new RandomAcessFile(“data.txt”, “rw”)既用于读也用于写(“data.txt”...原创 2019-12-20 21:41:15 · 143 阅读 · 0 评论 -
从Paxos到zookeeper
为了保证原子性Ci将记录加入日志中,发送原创 2019-11-28 23:52:12 · 140 阅读 · 0 评论 -
2020秋招面经
8月1号pdd提前批GC的理解GC的理解,分代的好处有GC还会有内存泄漏吗堆内存和栈内存区别classloader什么样的资源会被认为可以被回收设置堆的大小stop the world的目的,能避免吗?...原创 2019-11-02 22:57:54 · 290 阅读 · 0 评论