
《java面试你不知道的事》
对于在校,或者是刚毕业的需要面试就业的人,可能有很多的知识盲区,在这里我简单做一些总结。
良缘白马
IT行业苟且偷生的了三年的程序猿.
展开
-
7.面试总结分享之 —中间件
7.中间件1.redis1.购物车在redis中是怎么存的?我们的购物车,用的是redis 来实现的。 当加入购物车的时候 用户id作为redis 的key,产品集合作为redis的value。商品存的是 ,商品id 商品名称,和商品购买数量。当加入商品到购物车的时候,首先判断当前用户id对应的的产品集合里面是否含有当前产品,有则数量加一。没有则新添加该商品。2,说说Redis哈希槽的概念?Redis集群没有使用一致性hash,而是引入了哈希槽的概念,Redis集群有16384个哈希槽,每个ke原创 2020-10-27 11:26:46 · 378 阅读 · 0 评论 -
6.面试总结分享之 —框架基础
6.框架spring1.spring的事务及处理spring的事务是通过注解@Transactional完成的,它的设置属性可以完成不同的事务,例如:readOnly(只读)、timeout(事务运行的最大时间限制)、propagation(指定事务传播行为)等4.什么是spring?Spring 是一种轻量级开发框架,旨在提高开发人员的开发效率以及系统的可维护性。我们一般说 Spring 框架指的都是 Spring Framework,它是很多模块的集合,使用这些模块可以很方便地协助我们进行开原创 2020-10-25 18:07:10 · 317 阅读 · 0 评论 -
5.面试总结分享之 —计算机网络
5.网络1.网络基础1.TCP和UDP的区别TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接。TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通原创 2020-10-25 17:55:47 · 248 阅读 · 1 评论 -
4.面试总结分享之 —java多线程
4.java多线程1. 线程池的作用在程序启动的时候就创建若干线程来响应处理,它们被称为线程池,里面的线程叫工作线程第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。第三:提高线程的可管理性。2.创建线程池的方式有哪些?newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadP原创 2020-10-25 15:21:14 · 170 阅读 · 0 评论 -
3.面试总结分享之 —JVM相关
3.jvm3.1 内存模型1.jvm的数据类型有哪些?jvm包括两种数据类型,基本类型和引用类型。基本类型包括:数值类型,boolean类型,和returnAddress类型。数值类型包括,整型,浮点型,和char类型。boolean类型同样只有true和false。returnAddress类型是一个指针,指向jvm指令的操作码,在Java中没有与之对应的类型。boolean类型的操作会被转化为int类型的操作进行,boolean数组会当成byte数组去操作。1表示true,0表示false。原创 2020-10-25 13:27:36 · 402 阅读 · 0 评论 -
2.面试总结分享之 —数据库基础
2. 数据库基础1.什么是数据库引擎?数据库引擎:用于存储、处理、保护数据的核心服务。当你访问数据库时,不管是手工访问,还是程序访问,都不是直接读写数据库文件,而是通过数据库引擎去访问数据库文件2.数据库引擎有几种?Innodb 、 MyISAM 、MEMORY 、MERGE3.MyISAM和InnoDB的区别?InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一原创 2020-10-25 13:16:51 · 229 阅读 · 0 评论 -
普通本科院校秋招拿到多个java开发offer,看我复习了哪些?
系列文章目录文章目录系列文章目录前言一、java面经的由来?二、如何去看这些知识点?1.引入库2.读入数据3.java面经传送门前言现在是已经是十月底了,正所谓“金九银十”,2021届毕业生的秋招算是慢慢接近了尾声。相信绝大部分的同学拿到了心仪的offer。准备带着满心的憧憬去所签约的公司进行实习。对于我自己而言,我也拿到了包括恒生电子、赢时胜、深圳金证股份、华锐金融、深圳燕麦科技等公司的offer。当然这些成绩在大牛眼中可能不值一提(大牛和双一流学校的大佬请移步),但是对于大部分的普通非双原创 2020-10-25 12:01:57 · 666 阅读 · 0 评论 -
1.面试总结分享之 —Java基础
1. java基础1.线程和进程的区别根本区别:进程是资源分配最小单位,线程是程序执行的最小单位。 计算机在执行程序时,会为程序创建相应的进程,进行资源分配时,是以进程为单位进行相应的分配。每个进程都有相应的线程,在执行程序时,实际上是执行相应的一系列线程。地址空间:进程有自己独立的地址空间,每启动一个进程,系统都会为其分配地址空间,建立数据表来维护代码段、堆栈段和数据段;线程没有独立的地址空间,同一进程的线程共享本进程的地址空间。资源拥有:进程之间的资源是独立的;同一进程内的线程共享本原创 2020-10-25 11:55:08 · 296 阅读 · 0 评论 -
计算机行业应届生秋招春招究竟拼的是什么?
计算机行业是被行外人神话的行业,也是被行内人吐槽的行业。2020年中国高校IT行业毕业生达到了将近70万人;这是什么概念?这样的情况下应届生的顺利就业将会是很大的问题。也就是说几十计算机行业的人才需求很大,也将面临着很大一部分毕业生找不到工作。尤其是在2019的互联网寒冬和2020的新冠肺炎的影响下,想要寻求一份令自己满意的offer将变得尤为困难。文章目录前言一、基础才是硬实力!二、项目和实习是加分项,但请勿本末倒置!前言2020年2月到9月底我投了不下百家公司,虽然屡屡受挫,但是在每一原创 2020-09-28 21:45:33 · 929 阅读 · 0 评论 -
21届的秋招,抓住机会吧!
这个时代的各行各业都不容易,我能够理解作为千百万毕业生中各项能力都不出众的人对于就业的担忧,但请你们,请我们都坚持住;只要自己态度端正,保持自信,加倍努力就会有好的结果。原创 2020-09-26 17:42:13 · 450 阅读 · 0 评论 -
我相信很多学java的还搞不清重量级锁、自旋锁、轻量级锁、偏向锁、悲观、乐观锁,看完这篇你就懂了!
写在前面我相信初学java或者是没有深入理解过java多线程的同学,在后端学习的过程中一定也和我一样被java的这锁,那锁啥的折腾的够呛,没关系,你接着往下看,看完这篇文章我相信你对重量级锁、自旋锁、轻量级锁、偏向锁、悲观、乐观锁等的概念会有较为深刻的理解的。这篇文章我就给大家讲一下这些锁究竟是啥,他们的由来,他们之间有啥关系,有啥区别。(敲黑板~~,重点来了)锁机制以及各种锁为何要加锁?学过多线程的同学肯定知道**锁这个东西,那么究竟程序为何要加锁呢?总结起来就一句话:因为多线程情况下线程之间的原创 2020-07-16 16:41:34 · 591 阅读 · 0 评论 -
前端获取springBoot的数据(以json格式)进行展示,并相应的存取到Redis缓存中例子
前言在实际开中我们都知道 ,前后端的交互中数据的传递是一个很重要的部分,在项目中一般前端请求后端的数据时controller层一般返回对象格式的数据,例如数组,对象,或者是json格式的数据。而使用Redis作为缓存在实际的开发中也是提高系统响应时间和降低后台数据库的压力也是常用的操作。前端获取springBoot的数据(以json格式)进行展示,并相应的存取到Redis缓存中过程1.做数据库和redis 的配置server.port=8081spring.application.name=tr原创 2020-07-04 15:46:14 · 2146 阅读 · 0 评论 -
互联网大厂纷纷裁员,未毕业的你是否做好了顺利就业的准备?
自一月疫情的影响,使得各个行业的发展都不景气。互联网行业尤为严重,不论是还在刚起步的科技公司还是BATJ这样的大厂,都有了相应的人员缩减和招聘缩减(大家对比去年的或者前年的招聘职位数量和今年的就可以看到)。就在4月18日,微博爆出了蘑菇街裁员的消息,而且裁员比例竟然高达百分之14%,对于缘员工人数在1000+的互联网公司。也就意味着将近150多人面临离职的危险。难道真的像有些人说的:2019年是...原创 2020-04-20 09:45:21 · 597 阅读 · 0 评论 -
java中的锁有哪些种类?
在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁自旋锁上面是很多锁的名词,这些分类并不是全是指锁的状态,有的指锁的特性,有的指锁的设计,下面总结的内容是对每个锁的名词进行一定的解释。公平锁/非公平锁公平锁是指多个线程按照申请...原创 2020-04-09 18:22:07 · 672 阅读 · 0 评论 -
分布式锁的实现方式有哪些?
分布式是在大型的系统中经常使用的技术,在使用的过程中为了使得进程之间不会相互干扰就需要使用分布式锁为什么要使用分布式锁为了保证一个方法或属性在高并发的情况下同一时间只能被同一个线程执行,在传统单机部署的情况下,可以使用Java并发处理相关的API(如ReentrantLock或Synchronized)进行互斥控制。但是,随之业务发展的需要,原单机部署的系统演化成分布式集群系统后,由于分布式系...原创 2020-04-03 20:28:38 · 824 阅读 · 0 评论 -
数据库的事务隔离级别
嘟嘟嘟,面试官的电话打过来了:你好XXX,我看你在简历上写上了熟练使用Mysql数据库,年轻人你要知道“熟练”这两个字可不是随便用的,既然你说了那我就考考你啊。此时的我慌的一批,尼玛写简历也没啥经验,我要是知道你会扣简历上的字和词语,我绝对会是像对待女朋友那样对待简历(emmm,哎请容许我用夸张的手法形容一下,谁叫我没有女朋友…)那你说说吧,什么是数据库的事务?事务(Transactio...原创 2020-04-03 17:10:40 · 141 阅读 · 0 评论 -
string、stringbuffer、stringbuilder的异同?
1.数据类型string是常量,是不可变的stringbuffer是变量stringbuilder是变量2.线程的安全性stringbuffer是线程安全的stringbuffer代码片段:@Overridepublic synchronized StringBuffer append(String str) { toStringCache = null; ...原创 2020-03-23 18:09:48 · 112 阅读 · 0 评论 -
java8的新特性有哪些?
Lambda 表达式 − Lambda 允许把函数作为一个方法的参数(函数作为参数传递到方法中)。方法引用 − 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使语言的构造更紧凑简洁,减少冗余代码。默认方法 − 默认方法就是一个在接口里面有了一个实现的方法。新工具 − 新的编译工具,如:Nashorn引擎 jjs、 类...原创 2020-03-16 08:48:42 · 619 阅读 · 0 评论 -
常用的负载均衡有哪些?
http重定向DNS域名解析反向代理IP层负载均衡链路层负载均衡常用负载均衡的工具NginxNginx 可以用于七层负载均衡。但是对于一些大的网站,一般会采用 DNS+四层负载+七层负载的方式进行多层次负载均衡。LVSLVS(Linux Virtual Server),也就是 Linux 虚拟服务器,是一个由章文嵩博士发起的自由软件项目。使用 LVS ...原创 2020-03-12 17:37:09 · 1898 阅读 · 0 评论 -
常用的排序算法和查找算法有哪些?
常用排序算法冒泡排序详细实现选择排序详细实现插入排序详细实现希尔排序详细实现快速排序详细实现归并排序详细实现基数排序(桶排序)详细实现常用查找算法线性查找详细实现二分查找详细实现插值查找详细实现斐波那契查找详细实现...原创 2020-03-12 17:23:15 · 791 阅读 · 0 评论 -
TCP 和 UDP 的区别?TCP 数据传输过程中怎么做到可靠的?
TCP、UDP的区别TCP 是面向连接的,UDP 是面向无连接的UDP程序结构较简单TCP 是面向字节流的,UDP 是基于数据报的TCP 保证数据正确性,UDP 可能丢包TCP 保证数据顺序,UDP 不保证TCP 为什么是可靠连接通过 TCP 连接传输的数据无差错,不丢失,不重复,且按顺序到达。TCP 报文头里面的序号能使 TCP 的数据按序到达报文头里面的确认序号能保证不...原创 2020-03-12 17:02:56 · 382 阅读 · 0 评论 -
数据库常见的SQL优化有哪些?
数据库优化的几个方面1.SQL以及索引的优化是最重要的。2.要根据一些范式来进行表结构的设计。3.系统配置的优化。4.硬件优化。这是一篇对于数据库SQL优化的方法写的比较全面的一篇文章,面试者和学习者可以看看SQL常见优化方法...原创 2020-03-12 16:52:21 · 696 阅读 · 0 评论 -
面试官问到HashMap看你会不会
1.HashMap的底层数据结构?HashMap是我们非常常用的数据结构,由数组和链表组合构成的数据结构(也可以使用数组加树的方式实现)。大概如下,数组里面每个地方都存了Key-Value这样的实例,在Java7叫Entry在Java8中叫Node。因为他本身所有的位置都为null,在put插入的时候会根据key的hash去计算一个index值。就比如我put(”小马“,212),我插入...原创 2020-03-12 16:09:38 · 445 阅读 · 0 评论 -
一个公司ABCD轮融资是什么意思?
相信很多的IT专业的伙伴在为实习和今后的工作做准备,在查询有关公司的一些信息的时候是时常会看到这样的写法:A轮融资,天使融资等,那这些究竟是什么意思呢,实习或者是寻找工作的时候怎么看呢?一起来了解一下1.整体介绍按照业界现行的行业常识来说,目前国内市场的融资轮次大概可以分为:种子轮、天使轮、Pre-A轮、A轮、A+轮、B轮、C轮、BAT轮、Pre-IPO轮以及IPO轮。这些都是整个企业发展遇到...原创 2020-02-12 15:45:38 · 6193 阅读 · 0 评论