![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
文章平均质量分 80
my_styles
重在分享
展开
-
java 高级面试题整理
SpringMVC的控制器是单例的吗?第一次:类是多例,一个普通属性和一个静态属性总结尽量不要在controller里面去定义属性,如果在特殊情况需要定义属性的时候,那么就在类上面加上注解@Scope("prototype")改为多例的模式.以前struts是基于类的属性进行发的,定义属性可以整个类通用,所以默认是多例,不然多线程访问肯定是共用类里面的属性值的,肯定是不安全的,但是springmvc是基于方法的开发,都是用形参接收值,一个方法结束参数就销毁了,多线程访原创 2023-01-09 09:52:52 · 2431 阅读 · 0 评论 -
2020-java中级面试题
No. JD技术分类 问题 参考答案 判断标准 反馈 1 基础知识 HashMap和TreeMap区别 HashMap:①数组加链表方式存储key/value,②线程非安全,③允许null作为key和value,④key不可以重复,value允许重复,⑤不保证元素迭代顺序是按照插入时的顺序; TreeMap:①基于红黑树,②线程非安全,③不允许null作为key,④key不可以重复,value允许重复,⑤存入TreeMap的元素应当实现Compa..原创 2020-12-06 10:34:09 · 5364 阅读 · 0 评论 -
java 高级面试题分布式与微服务(借鉴)
CAP理论是分布式领域中⾮常重要的⼀个指导理论,C(Consistency)表示强⼀致性,A(Availability)表示可⽤性,P(Partition Tolerance)表示分区容错性,CAP理论指出在⽬前的硬件条件下,⼀个分布式系统是必须要保证分区容错性的,⽽在这个前提下,分布式系统要么保证CP,要么保证AP,⽆法同时保证CAP。 分区容错性表示,⼀个系统虽然是分布式的,但是对外看上去应该是⼀个整体,不能由于分布式系统内部的某个结点挂点,或⽹络出现了故障,⽽导致系统对外出现异常。所以,原创 2022-12-06 11:01:02 · 662 阅读 · 0 评论 -
java 高级面试题(借鉴)(中)
@Import + @Configuration + Spring spi ⾃动配置类由各个starter提供,使⽤@Configuration + @Bean定义配置类,放到METAINF/spring.factories下 使⽤Spring spi扫描META-INF/spring.factories下的配置类 使⽤@Import导⼊⾃动配置类 使⽤spring + springmvc使⽤,如果需要引⼊mybatis等框架,需要到xml中定义原创 2022-12-06 09:59:04 · 496 阅读 · 0 评论 -
Redis有哪些数据类型和Redis的持久化方式和区别
① string② list③ set④ sorted set⑤ hash使用场景参考如下:string,用作计数器,统计在线人数等等,可以存储二进制数据如使用它来存储图片等。hash,存放键值对,一般可以用来存某个对象的基本属性信息,例如,用户信息,商品信息等list,列表类型,可以用于实现消息队列,也可以使用它提供的range命令,做分页查询功能。set,可以用作去重功能,例如用户名不能重复等,另外,还可以对集合进行交集,并集操作,来查找某些元素的共同点...原创 2021-01-06 14:56:27 · 1536 阅读 · 0 评论 -
spring的bean加载流程
spring的bean加载流程,循环依赖一: 实例化一个applicationContext的对象创建一个beanFactory工厂对象二: beanFactory的后置处理器对当前的所有类进行扫描三: 使用for循环将所有的类通过一个beanDefintion对象进行解析和初始化默认参数, 并 且将实例化后的对象缓存到beanDefintionMap中四: 再次调用beanFactory的后置处理器对beanDefintion...原创 2021-03-05 10:06:02 · 1934 阅读 · 1 评论 -
java中高级面试题整理
java中高级面试题整理 问题 答案 java编程如何保证多线程运行安全? 线程的安全性问题体现在: 原子性:一个或者多个操作在CPU执行的过程中不被中断的特性 可见性:一个线程对共享变量的修改,另外一个线程能够立刻看到 有序...原创 2021-03-06 08:49:55 · 3579 阅读 · 0 评论 -
java-高级面试题2023
1、ArrayList 和 Vector 的区别。 Vector 是线程安全的,而 ArrayList 是线程序不安全的,如果只有一个线程会访问到集合,那最好是使用 ArrayList,因为它不考虑线程安全,效率会高些;如果有多个线程会访问到集合,那最好是使用 Vector,因为不需要我们自己再去考虑和编写线程安全的代码;2、Hashmap 实际上是一个数组和链表的结合体(在数据结构中,一般称之为 “链表散列 “)3、Set 里的元素是不能重复的,那么用什么方法来区分重复与否呢? ...原创 2021-03-02 08:49:43 · 1287 阅读 · 0 评论 -
Java基础面试题全集-初级
1、面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。- 继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读阎宏博士的《Java与模式》或《设计模式精解》中关于桥梁转载 2021-03-01 16:05:36 · 1354 阅读 · 0 评论 -
多线程面试题整理
如果使用ReentrantLock,可能本身是为了防止线程A在写数据、线程B在读数据造成的数据不一致,但这样,如果线程C在读数据、线程D也在读数据,读数据是不会改变数据的,没有必要加锁,但是还是加锁了,降低了程序的性能。ReadWriteLock是一个读写锁接口,ReentrantReadWriteLock是ReadWriteLock接口的一个具体实现,实现了读写的分离,读锁是共享的,写锁是独占的,读和读之间不会互斥,读和写、写和读、写和写之间才会互斥,提升了读写的性能。原创 2021-01-29 09:44:56 · 778 阅读 · 0 评论 -
208道最常见的Java面试题整理(面试必备)
测试时间转载 2021-01-29 09:41:07 · 1755 阅读 · 2 评论