java
文章平均质量分 89
时间漏斗
这个作者很懒,什么都没留下…
展开
-
Java多线程7种创建方式
Java多线程7种创建方式原创 2022-06-06 01:39:39 · 224 阅读 · 0 评论 -
接口耗时优化与cpu飙高解决
最近突然接到上游业务侧通知,其中一个核心接口rt升高,最高耗时达到了15s左右,上游业务受到影响,于是开启了接口优化之路。优化思路梳理接口逻辑并加缓存梳理代码发现该接口依赖了很多其他接口数据。于是对各个接口耗时进行了分析, 将耗时top5的接口全部梳理出来。让接口人自己对接口优化, 但是一般由于排期资源等,可能一时半会没有资源。与接口人确认接口数据的实效性,确定接口是否可以加缓存以及缓存时间对数据影响。于是对接口中人员组织的信息等变化频率不高的接口加缓存, 如果缓存中取不到数据在调接口或者从数据原创 2021-06-12 18:26:45 · 3921 阅读 · 2 评论 -
Spring @Configration和@Bean注解
Spring @Configration和@Bean注解在面试常见场景Q: spring中,类上加不加@Configuration注解,有什么区别?A: 当某个类上有@Configuration注解的时候,可以在这个类中使用@Bean注解向spring容器中注册bean;如果不加@Configuration注解,不能通过@Bean注解注册bean。Q: 你确定不用@Configuration注解,不能通过@Bean注解来注册bean?A: 看着面试官,犹豫了10秒钟,说:不加@Configurat原创 2021-05-31 23:41:10 · 664 阅读 · 5 评论 -
Spring 注解 @Qualifier 详细解析
1. 概述今天带你了解一下 Spring 框架中的 @Qualifier 注解,它解决了哪些问题,以及如何使用它。我们还将了解它与 @Primary 注解的不同之处。2. 痛点使用 @Autowired 注解是 Spring 依赖注入的绝好方法。但是有些场景下仅仅靠这个注解不足以让Spring知道到底要注入哪个 bean。默认情况下,@Autowired 按类型装配 Spring Bean。如果容器中有多个相同类型的 bean,则框架将抛出 NoUniqueBeanDefinitionExcept原创 2021-05-31 20:31:23 · 1466 阅读 · 2 评论 -
Java内部类以及使用场景
所谓内部类,即定义在另一个类中的类。那么,为什么会有内部类这个概念,他的使用场景又是什么呢?首先,来看一下内部类的特点:1. 它体现了一种代码的隐藏机制和访问控制机制,内部类与所在外部类有一定的关系,往往只有该外部类调用此内部类,所以没有必要专门用一个Java文件存放这个类。 public class Outer { private int num; private class Inner { private int num; }}一般的类是不允许用private修饰符转载 2020-12-15 19:14:36 · 4538 阅读 · 0 评论 -
Java内存泄漏
内存泄漏:对象已经没有被应用程序使用,但是垃圾回收器没办法移除它们,因为还在被引用着。在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条件,这些对象就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,然而它却占用内存。原创 2020-12-06 02:12:45 · 233 阅读 · 0 评论 -
Spring拦截器
Spring MVC原创 2019-12-25 21:33:07 · 161 阅读 · 0 评论 -
Java 8的缺省方法
Lambda表达式是Java 8中最重要的新增特性,为了在Java 8里既能增加这个新特性,又能保持向前兼容,很多随之而生的特性也端上了台面。缺省方法(Default Method)就是其中之一。随着这个新特性的出现,也就意味着接口可以定义方法实现了,该方法就是缺省方法。例子如下:interface HelloDefaultMethod { void sayHello(String h...原创 2019-12-15 17:40:40 · 1145 阅读 · 1 评论 -
接口优于抽象类
区别:抽象类包含某些方法的实现,但是接口则不允许。一个更为重要的区别在于,为了实现由抽象类定义的类型,类必须成为抽象类的一个子类。任何一个类,只要它定义了所有必要的方法,并且遵守通用约定,它就被允许实现一个接口,而不管这个类是处于类层次(class hierarchy)的哪个位置。因为Java只允许单继承,所以,抽象类作为类型定义受到了极大的限制。现有的类可以很容易被更新,以实...原创 2019-12-15 17:23:42 · 176 阅读 · 0 评论 -
复合优于继承
问题当通过子类继承父类并不是代码重用的最好手段,有这样的缺点:与方法调用不同的是,继承打破封装性。子类依赖于父类,如果父类的具体实现细节改变,子类也会跟着相应改变。除非父类就是专门为扩展而设计的,并且有良好的文档说明;父类方法中的”自用性“问题,导致的子类方法逻辑出错,比如统计HashSet自创建以来插入了多少个元素,需要覆盖add()方法和addAll()方法:public c...原创 2019-12-15 15:40:26 · 171 阅读 · 0 评论 -
要在公有类而非公有域中使用访问方法
要在公有类而非公有域中使用访问方法公有域 :域就是类中的成员变量,有时也叫字段,属性都是同一个意思。公有域就是能在其它类中直接访问的域,也就是带有域。class Test { private int a; // 这是一个私有域,只能在本类访问 public int b; // 这就是一个公有域了,可以在其它类中直接访问 protected int...原创 2019-12-15 14:40:50 · 331 阅读 · 0 评论 -
Spring MVC初学
Spring MVC初学MVC概述Model1在早期的Java Web开发中,统一把显示层、控制层、数据层的操作交给JavaBean 或者 JSP来处理,即所谓的Model1:不足点:JSP和Java Bean 之间耦合度高,Java代码和Html代码耦合在一起;开发过程中不仅仅涉及后端java开发,也涉及前端知识;代码复用层度低;Model2为了解决model1的弊端,...原创 2019-12-07 22:31:01 · 147 阅读 · 0 评论 -
Deprecated注解
@Deprecated注解Deprecated注解作用Deprecated注解作用今天在项目开发中遇到了师兄写的这个@Deprecated 注解,以前的开发过程中没有见过,因此总结一下:使用原因:外部正在调用或者二方库依赖的接口,不允许修改方法签名,避免对接口调用方产生影响。接口过时必须加 @Deprecated 注解,并清晰地说明采用的新接口或新服务是什么。含义:简言之,若某类或某方法...原创 2019-06-12 10:10:58 · 3400 阅读 · 0 评论 -
NoClassDefFoundError异常
NoClassDefFoundError原因NoClassDefFoundError和ClassNotFoundExceptionNoClassDefFoundError错误发生原因NoClassDefFoundError和ClassNotFoundException在java开发的过程经常会遇到这两个异常并且时常会产生混淆,为了便于区别,特作如下总结:相似点NoClassDefFou...原创 2019-04-29 20:00:06 · 2585 阅读 · 0 评论