自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 2021年秋招面试复盘|绿盟科技研发工程师123面汇总(已意向)

一面说实话,我对这场面试非常懵。约好的2点面试,面试官在开会,所以推迟到了2.05分。开局自我介绍你做过服务器的一个项目啊,说一下HTTP报文格式说一下Python的内存管理,想到哪说哪?(我的简历里面只有了解python五个字,剩下的全是C++),我回答主要用C++说一下你了解的网络攻击.回答 SYN FLOOD CSRF 中间人攻击你了解过绿盟吗?回答:XXXXX好了我的问题结束了,反问?反问面试流程,面试官说有3-4面,反问应该学些什么?面试官让我

2021-11-14 15:51:05 1716

原创 问了公司好几个架构师,没有一个人知道Redis为什么默认16个数据库?

前言大家好,我是挨踢大佬,一个不懂就爱问的程序员。在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。但是在搭建配置好Redis服务器后很多朋友应该会发现和有这样的疑问,为什么Redis默认建立了16个数据库,如下图所示。正文# 16个数据库的由来Redis是一个字典结构的存储服务器,一个Redis实例提供了多个用来存储数据的字典,客户端可以指定将数据存储在哪个字典中。这与在一个关系数据库实例中可以创建多个数据库类似(如下图所示),所以可以将其中的每个字典都理解成一个独立的数据库。

2021-11-10 14:34:40 588

原创 百度搜索架构后端开发面经总结,我费时半个月整理而成,你花点耐心看完秋招无忧!

一面 (1h15min)上来先手撕算法:只包含012数字的数组,进行排序层序遍历二叉树求数组所有子集之前实习有涉及到分布式计算和存储的开发,深挖项目(20min):前后端如何交互 (rpc和http区别)为什么用redis,mongodb做缓存,为什么用etcd做分布式同步数据量过大怎么办(缓存,持久化,上云)八股文:hadoop,hdfs,map reduce原理,数据怎么备份,文件结构,reducer怎么和mapper交流k8s架构,ingress

2021-08-05 15:52:13 667

原创 2022届毕业生面经总结,目前已拿到阿里+微软双offer,希望大家给点建议!

个人情况先介绍一下自己,本人2022届Java选手一枚,本硕都是通信专业。本科修过的计算机方向的课程仅限于C语言、C++、数据结构与算法、计算机网络。本科毕设时开始接触Java,研究生期间做了一些空间网络方向的科研工作,无可以往简历上写的实验室项目。微软一面都了解哪些设计模式介绍一下单例模式单例模式的优缺点是什么介绍一下MySQL的索引为什么MySQL要用B+树呢做了两道题:leetcode39.组合总和 leetcode40.组合总和 II微软二面自我介绍你觉得算法题目的代

2021-08-04 14:49:08 435 1

原创 2021寒冬将至,我是如何破釜沉舟成功拿到字节跳动offer的,分享我的面试经历

目前互联网行业形势越来越严峻,我接连投递了很多的简历,得到的回复却是寥寥无几,索性好好复习了大概一个半月的样子,挑战字节跳动成功!!接下来分享我在字节面试遇到的面试题,欢迎大家文末留言与我一起讨论!字节一面面试题(面了一个小时,只记得一 小部分了,不分先后) 讲讲项目 在浏览器的ur栏里输入一个https的请求会发生什么? balabala. 三次握手,close_ _wait, time_ _wait原理 内存泄露原因,举例子,怎么排查,OOM异常 静态内部类会被编译成几个..

2020-12-09 15:47:41 332

原创 946页神仙文档,阿里p7架构师见了都说详细,全部搞懂冲刺大厂不是梦

前言应广大粉丝要求,网上太多资料不够详细,不够全面,花了很多心思去收集,到头来发现并不全面,于是出现了本文,笔者在GitHub上找了很久终于找到了三份最全的Java学习笔记,总页数946页!涵盖知识:面试必问的:Java基础、高并发、多线程、分布式、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat等等知识

2020-12-09 15:38:09 171

原创 京东三面惨遭被虐,关于redis,高并发,分布式,微服务一窍不通

三面大概九十分钟,问的东西很全面,需要做充足准备,就是除了概念以外问的有点懵逼了(呜呜呜~)。回来之后把这些题目做了一个分类并整理出答案(强迫症的我~狂补知识~)分为redis缓存,高并发,分布式,微服务等,接下来分享一下我的这京东面试的面经+一些我的学习笔记。注意注意:需要小编整理的redis缓存,高并发,分布式,微服务等,面试答案、学习笔记、思维脑图(xmind)的朋友可以点击这里,获取资料京东关于redis缓存面试真题:项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造.

2020-12-04 15:09:49 190

原创 都2021年了,还有人不知道这些JDK动态代理面试点吧

前言:金九银十过去了,给大家在这里总结了一些JDK动态代理面试点,又需要更多面试知识点的关注微信公众号【Java程序员聚集地】获取更多面试知识点。一、什么是代理代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。代理模式UML图:结构示意图:为了保持行为的一致性,代理类和委托类通常会实现相同的接口,所以在访问者看来两者没有丝毫的区别。通过代理类这中..

2020-12-02 22:31:45 206

原创 蚂蚁金服面试真题四面曝光【基础+JAVA Web+数据库+框架】,进大厂必备!!!

一、基础1、JAVA中能创建volatile数组吗?volatile能使得一个非原子操作变成原子操作吗?2、10个线程和2个线程的同步代码,哪个更容易写?3、什么是线程局部变量?4、我们自己写一个容器类,然后使用for-each循环吗?5、说出5条IO的最佳实践?6、说出至少5点在Java中使用线程的最佳实践?7、我能在不进行强制转换的情况下将一个double值赋值给long类型的变量吗?8、我们能在Switch中使用String吗?9、poll()方法和remove()

2020-11-29 22:08:31 531

原创 秋招JAVA面试总结:Java+并发+Spring+MySQL+分布式+Redis+算法+JVM等

轰轰烈烈的“金九银十”秋招季已经落幕,有人欢喜有人愁,不管你是喜是忧,学习总归是好的。这不,小编特地整理了一下秋招面试知识点(JAVA岗),一起分享出来给大家看看~第一部分 Java相关1.1 JAVA基础面向对象和面向过程的区别 Java 语言有哪些特点 关于 JVM JDK 和 JRE 最详细通俗的解答 Oracle JDK 和 OpenJDK 的对比 List 和 Set 的区别 什么是 Java 程序的主类 应用程序和小程序的主类有何不同 Java 应用程序与小程序之间有那些

2020-11-29 22:01:04 224

原创 4 年 Java ,我总结出来的面试真题,经验,以及一些面试心得

前言由于个人发展的原因和工作上的变动,产生了想出来看看机会的想法。经过了一段时间的准备,5 月下旬开始出来面试,面到了 7 月上旬,如愿拿到了自己心仪公司的 offer。按照自己的习惯,将这次面试过程中的一些经验总结、心得体会记录下来,自己留个记录,也希望可以帮助到一些同学。个人情况坐标魔都,15 年本科毕业于普通一本,毕业后就职于一家传统电信公司,17 年后就职于美团点评。面试情况相比于 17 年,由于有了美团的背景,今年在简历这关顺利了很多,不得不感叹大厂背景真香 。本着尽量少请

2020-11-29 17:25:28 804

原创 2021年最新面试真题大集合【Java基础+多线程+反射+Java Web+Mybatis】

这份面试清单是我从 2015 年做了 TeamLeader 之后开始收集的,一方面是给公司招聘用,另一方面是想用它来挖掘我在 Java 技术栈中的技术盲点,然后修复和完善它,以此来提高自己的技术水平。虽然我从 2009 年就开始参加编程工作了,但依旧觉得还有很多东西要学,当然学习的过程也给我带来了很多成就感,这些成就感也推动我学习更多的技术知识。聊回面试题这件事,这份面试清单原本是我们公司内部使用的,可到后来有很多朋友在微信上联系到我,让我帮他们找一些面试方面的资料,而且这些关系也不太好拒绝,一呢,是因

2020-11-29 17:10:13 305

原创 因这2400页面试题,我成功面试到了阿里p8,成功完成逆袭!!!

最其实不管什么时候,找工作都跑不了面试。目前很多小编都做了面试手册了,那就是别人家的孩子都有糖了,作为一个自觉的小编,必须搞。容我先絮叨一下,制作这个面试手册差不多花了3个多星期时间,过程还是比较磨人的,但是也很期待。要是因为我做的手册,帮助到了大家,那就真的开心啊!这就是这篇文章的目的,帮你搜集了大量的面试题,已经整理成了一个Java面试手册PDF,《互联网面试2400页》,目前有65份PDF,共有2400多页,后续还会不断的完善更新。直接进入正题,由于pdf文档里的细节内容实在过多所以只编辑了

2020-11-26 21:51:07 251

原创 Kafka是如何处理Netflix每天2万亿条消息的?

从产生伊始,各类微服务就需要以不同的方式进行彼此通信。有些人喜欢使用 HTTP REST APIs,但是他们可能会碰到自身的队列问题;有些人则倾向使用诸如 RabbitMQ 之类旧的消息队列,然而他们不得不考虑扩容和运营等相关问题。因此以 Kafka 为核心的架构应运而生,它旨在解决上述两方面的问题。在本文中,我们将和您讨论 Apache Kafka 是如何改进过去在微服务中,所用到的 HTTP REST API 和消息队列架构,以及它是如何进一步扩展自己的服务能力。两大阵营的故事.

2020-11-26 21:29:43 199 1

原创 1024程序员节,我的经验分享(Java开发八年),送给迷茫中的你。

1024程序员节当技术开始撑起世界、改变人类生活时,全球都在争夺IT相关人才——程序员。他们背后付出的辛劳,一点一点地被大众所熟知、所敬佩。一年一度属于他们的节日——1024程序员节如期而至。祝各位开发者们节日快乐。1024程序员节从何而来?1024是2的10次方,常用于存储空间的定义:1M = 1024K,被认为是:「一个只有程序员才懂的数字」。现在有些收费群和邮件列表也喜欢用收「1024元」而不是「1000元」来彰显自己独特的逼格。总之「1024」被捧成了一个神奇...

2020-11-20 21:58:08 428

原创 微服务架构带来的挑战,以及微服务的9大特性!!!

微服务是近三年来较为热门的话题,而我本人自去年接触微服务开始,就对其产生了较为浓厚的兴趣,公司也在尝试将之前的单体架构向微服务架构过渡,因此打算系统的学习一下微服务相关的知识。主要学习微服务的思想,架构设计以及SpringCloud生态的各类组件,涵盖了服务治理组件Eureka,客户端负载均衡组件Ribbon,服务容错保护组件Hystrix,声明式服务调用组件Feign,API网关治理组件Zuul,分布式配置中心组件Config,消息总线组件Bus,消息驱动组件Stream,分布式跟踪组件Sleuth等,这

2020-10-09 21:56:18 1221

原创 2020年最新阿里,腾讯,字节跳动面试真题800道(Java基础、spring、springmvc、springboot),面试跳槽必备!!!

进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里、美团、滴滴、头条等大厂面试大全其中概括的知识点有:Java基础、spring、springmvc、springboot、springcloud、JVM、Tomcat、dubbo、netty、zookeeper共有500+道面试题面试题整理十分全面,文末还有答案解析!(文章比较长,耐心看完,让你面试提升一大截!)获取以下面试专题答案的朋友们文末附有免费领取方式Java基础Java概述 何为编程 什.

2020-10-09 17:19:27 527

原创 华为十年资深架构师谈:面试官最喜欢问的几十个spring面试真题

前言:Spring 框架知识是互联网公司面试必考知识点。对于开发同学来说,Spring 框架熟悉又陌生。熟悉:开发过程中无时无刻不在使用 Spring 的知识点;陌生:对于基本理论知识疏于整理与记忆。导致很多同学面试时对于 Spring 相关的题目知其答案,但表达不够完整准确。针对 Spring 面试题目,进行全面的梳理与解答,参考了公司面试题集,分享给大家。主要内容: 基本概念面试题集(Spring 相关的概念梳理) 应用场景面试题集(各知识点不同使场景选型)

2020-10-09 14:10:52 507 1

原创 呕心整理三个月,整理出这一份备战面试最全Java面试真题,冲刺金九银十,见到收藏系列

前言:一年之计在于秋,金九已经过去了,但银十正在进行,2020已经接近尾声了,作为一个开发人员,你是否面上了自己理想的公司,薪资达到心中理想的高度?进大厂是大部分程序员的梦想,而进大厂的门槛也是比较高的,所以这里整理了一份阿里、腾讯、字节跳动、头条等大厂面试大全其中概括的知识点有:Java基础,spring,springboot,springcloud,JVM,MyBatis,Redis。Java基础Java概述 何为编程 什么是Java jdk1.5之后的三大版本 JVM、.

2020-10-08 22:20:29 1674

原创 面试500多名程序员,总结出2020年最新版Java面试题大全(文末附参考答案)

本套Java面试题大全总共分为以下这十三个模块: Java基础知识面试题 Java异常面试题 JVM面试题 Spring面试题 Spring MVC面试题 Spring Boot面试题 Spring Cloud面试题 MyBatis面试题 Redis面试题 Dubbo面试题 Tomcat面试题 ZooKeeper面试题 Netty面试题 一、Java基础知识面试题..

2020-10-08 21:53:36 383

原创 干货分享:SpringMVC常见面试题总结(超详细回答)

1、什么是Spring MVC ?简单介绍下你对springMVC的理解?Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。2、SpringMVC的流程?(1)用户发送请求至前端控制器DispatcherServlet;(2) DispatcherServlet收到请求后,调用Ha.

2020-09-28 21:30:49 212

原创 Linux进程知识干货

1、进程的创建:一般使用fork、vfork或者clone创建进程。进程号PID: 标志进程的一个非负整型数。getpid()父进程号PPID: 任何进程(除了init进程,进程号为1,进程号为0的是调度进程)都是由另一个进程创建,该进程称为被创建进程的父进程,其对应的进程号就是父进程号。getppid()进程组号PGID: 进程组是一个或多个进程的集合。他们之间相互关联,进程组可以接收同一终端的各种信号,关联的进程有一个进程组号PGID。getpgid()fork函数 ...

2020-09-27 15:18:03 231

原创 拼多多面试:如何用 Redis 统计独立用户访问量?

众所周至,拼多多的待遇也是高的可怕,在挖人方面也是不遗余力,对于一些工作3年的开发,稍微优秀一点的,都给到30K的Offer,当然,拼多多加班也是出名的,一周上6天班是常态,每天工作时间基本都是超过12个小时,也是相当辛苦的。废话不多说,今天我们来聊一聊拼多多的一道后台面试真题,是一道简单的架构类的题目:拼多多有数亿的用户,那么对于某个网页,怎么使用Redis来统计一个网站的用户访问数呢?使用Hash哈希是Redis的一种基础数据结构,Redis底层维护的是一个开散列,会把不同的key映射到哈希表上

2020-09-25 17:28:34 427

原创 备战金九银十:4000道Java面试真题合集,助你搞定面试官

又逢金九银十,意味着很多人又面临着就职和跳槽,相信还有很多人对于自己就职没有很大的把我,今天就给大家分享我一个朋友总结的4000到Java必问核心知识点,以及面试真题解答。Spring Boot(基础知识)什么是SMTP?SMTP全称为Simple Mail Transfer Protocol(简单邮件传输协议),它是⼀组⽤于从源地址到⽬的地址传输邮件的规范,通过它来控制邮件的中转⽅式。SMTP认证要求必须提供账号和密码才能登陆服务器,其设计⽬的在于避免⽤⼾受到垃圾邮件的侵扰.什么是

2020-08-23 17:01:53 355

原创 分析阿里/京东/网易Java岗面试,总结出70道高频必问题(含解析)

很多人面试之前,可能没有在互联网公司工作过或者说工作过但年头较短,不知道互联网公司技术面试都会问哪些问题? 再加上可能自己准备也不充分,去面试没几个回合就被面试官几个问题打蒙了,最后以惨败收场。针对这些的同学,总结了一份互联网公司Java高面试专题,进行了解析整理做成pdf,免费分享给大家,给大家指一指方向,希望大家能带着这些问题,找相关资料进行有针对性行的学习,对面试做到知己知彼,百战百胜。MySQL数据库数据库—Java程序员面试必问刚需,整理了10道经典的问题,还有更多在文末获取!1.

2020-08-21 20:20:15 327 1

原创 蚂蚁花呗4面技术题:分布式+大数据+MySQL+linux+红黑树+并发容器

蚂蚁花呗一面(一个小时):Java容器有哪些?哪些是同步容器,哪些是并发容器? ArrayList和LinkedList的插入和访问的时间复杂度? java反射原理, 注解原理? 说说一致性 Hash 原理 新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法? HashMap在什么情况下会扩容,或者有哪些操作会导致扩容? HashMap push方法的执行过程? HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头? 1.8还采用了红黑树,讲讲红黑树的特性,为什

2020-08-17 21:48:27 219

原创 备战金九银十,如何顺利拿到鹅厂的offer

经过半年的沉淀,加上对MySQL,redis和分布式这块的补齐,终于开始重拾面试信心,再次出征。面试职位:java后端开发工程师。在鹅厂的面试前三面真的有点急促,一周内就面完了三次面试,接着就开始无尽的等待,整整等了三周左右,终于完成了四面和HR面。整个过程还是比较曲折的,技术面试的难度也挺大的,不过他们部门也是Java线,所以还比较有的聊。现在已拿到offer。下面我总结的遇到的四面技术面试题和hr面。一面:1 有序数组排序,二分,复杂度2 常见排序算法,说下快排过程,时间复杂

2020-08-17 17:07:37 274

原创 分析阿里/京东/网易Java岗面试,总结出70道高频必问题(含解析)

很多人面试之前,可能没有在互联网公司工作过或者说工作过但年头较短,不知道互联网公司技术面试都会问哪些问题? 再加上可能自己准备也不充分,去面试没几个回合就被面试官几个问题打蒙了,最后以惨败收场。针对这些的同学,总结了一份互联网公司Java高面试专题,进行了解析整理做成pdf,免费分享给大家,给大家指一指方向,希望大家能带着这些问题,找相关资料进行有针对性行的学习,对面试做到知己知彼,百战百胜。有需要的朋友可以可以私信小编,架构资料,获取免费资料哦。MySQL数据库数据库—Java程序员面试必.

2020-07-03 16:42:56 272

原创 盘点那些必问的数据结构算法题之快速排序

0 概述快速排序也是基于分治模式,类似归并排序那样,不同的是快速排序划分最后不需要merge。对一个数组 A[p..r] 进行快速排序分为三个步骤: 划分:数组 A[p…r] 被划分为两个子数组 A[p…q-1] 和 A[q+1…r],使得 A[p…q-1] 中每个元素都小于等于 A[q],而 A[q+1…r] 每个元素都大于 A[q]。划分流程见下图。 解决:通过递归调用快速排序,对子数组分别排序即可。 合并:因为两个子数组都已经排好序了,且已经有大小关系了,不需要做任何操作

2020-07-03 16:24:41 334

原创 盘点那些必问的数据结构算法题之基础排序

0 概述排序算法也是面试中常常提及的内容,问的最多的应该是快速排序、堆排序。这些排序算法很基础,但是如果平时不怎么写代码的话,面试的时候总会出现各种bug。虽然思想都知道,但是就是写不出来。本文打算对各种排序算法进行一个汇总,包括插入排序、冒泡排序、选择排序、计数排序、归并排序,基数排序、桶排序、快速排序等。快速排序比较重要,会单独写一篇,而堆排序见本系列的二叉堆那篇文章即可。需要提到的一点就是:插入排序,冒泡排序,归并排序,计数排序都是稳定的排序,而其他排序则是不稳定的。本文代码:htt

2020-07-03 16:23:03 201

原创 盘点那些必问的数据结构算法题之二分查找算法

0 概述二分查找本身是个简单的算法,但是正是因为其简单,更容易写错。甚至于在二分查找算法刚出现的时候,也是存在bug的(溢出的bug),这个bug直到几十年后才修复(见《编程珠玑》)。本文打算对二分查找算法进行总结,并对由二分查找引申出来的问题进行分析和汇总。若有错误,请指正。1 二分查找基础相信大家都知道二分查找的基本算法,如下所示,这就是二分查找算法代码:/***基本二分查找算法*/intbinarySearch(inta[],intn,intt){...

2020-07-03 16:19:15 206

原创 盘点那些必问的数据结构算法题之二叉树基础

0 概述在说二叉树前,先来看看什么是树。树中基本单位是结点,结点之间的链接,称为分支。一棵树最上面的结点称之为根节点,而下面的结点为子结点。一个结点可以有0个或多个子结点,没有子结点的结点我们称之为叶结点。二叉树是指子结点数目不超过2个的树,它是一种很经典的数据结构。而二叉搜索树(BST)是有序的二叉树,BST需要满足如下条件: 若任意结点的左子树不空,则左子树上所有节点的值均小于它的根节点的值; 若任意结点的右子树不空,则右子树上所有节点的值均大于或等于它的根节点的值;(有些书里面

2020-07-03 16:17:01 206

原创 盘点那些必问的数据结构算法题之二叉堆

0 概述本文要描述的堆是二叉堆。二叉堆是一种数组对象,可以被视为一棵完全二叉树,树中每个结点和数组中存放该结点值的那个元素对应。树的每一层都是填满的,最后一层除外。二叉堆可以用于实现堆排序,优先级队列等。本文代码地址在 这里。https://github.com/shishujuan/dsalg/tree/master/code/ds/heap1 二叉堆定义使用数组来实现二叉堆,二叉堆两个属性,其中 LENGTH(A) 表示数组 A 的长度,而 HEAP_SIZE(A) 则表示存放在A...

2020-07-03 16:14:35 310

原创 盘点那些必问的数据结构算法题之链表

0 概述链表作为一种基础的数据结构,在很多地方会用到。如在Linux内核代码,redis源码,python源码中都有使用。除了单向链表,还有双向链表,本文主要关注单向链表(含部分循环链表题目,会在题目中注明,其他情况都是讨论简单的单向链表)。双向链表在redis中有很好的实现,也在我的仓库中拷贝了一份用于测试用,本文的相关代码在 这里。https://github.com/shishujuan/data-structure-algorithms1 定义先定义一个单向链表结构,如下,定义了链表

2020-07-03 16:12:12 442

原创 说一下线程池内部工作原理

随着cpu核数越来越多,不可避免的利用多线程技术以充分利用其计算能力。所以,多线程技术是服务端开发人员必须掌握的技术。线程的创建和销毁,都涉及到系统调用,比较消耗系统资源,所以就引入了线程池技术,避免频繁的线程创建和销毁。在Java中有一个Executors工具类,可以为我们创建一个线程池,其本质就是new了一个ThreadPoolExecutor对象。线程池几乎也是面试必考问题。本节结合源代码,说说ThreadExecutor的工作原理一、线程池创建先看一下ThreadPoolExecut

2020-07-03 16:10:13 364

原创 Mybatis面试18问,你想知道的都在这里了!

1、#{}和${}的区别是什么?答:${}是Properties文件中的变量占位符,它可以用于标签属性值和sql内部,属于静态文本替换,比如${driver}会被静态替换为com.mysql.jdbc.Driver。#{}是sql的参数占位符,Mybatis会将sql中的#{}替换为?号,在sql执行前会使用PreparedStatement的参数设置方法,按序给sql的?号占位符设置参数值,比如ps.setInt(0, parameterValue),#{item.name}的取值方式为使用反射从

2020-07-03 16:08:55 160

原创 一份tcp、http面试指南,常考点都给你了

TCP要说http就绕不开tcp,TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性。但是,http是基于tcp协议的。TCP/IP 协议分层模型 物理层将二进制的0和1和电压高低,光的闪灭和电波的强弱信号进行转换 链路层代表驱动 网络层 使用 IP 协议,IP 协议基于 IP 转发分包数据 IP 协议是个不可靠协议,不会重发 IP 协议发送失败会使用ICMP 协议通知失败 ARP 解析

2020-07-03 16:07:24 181

原创 请你详细说说类加载流程,类加载机制及自定义类加载器

一、引言当程序使用某个类时,如果该类还未被加载到内存中,则JVM会通过加载、链接、初始化三个步骤对该类进行类加载。二、类的加载、链接、初始化1、加载类加载指的是将类的class文件读入内存,并为之创建一个java.lang.Class对象。类的加载过程是由类加载器来完成,类加载器由JVM提供。我们开发人员也可以通过继承ClassLoader来实现自己的类加载器。1.1、加载的class来源 从本地文件系统内加载class文件 从JAR包加载class文件 通过网

2020-07-02 16:53:14 215

原创 说说 如何停止一个正在运行的线程?

停止一个线程意味着在任务处理完任务之前停掉正在做的操作,也就是放弃当前的操作。停止一个线程可以用Thread.stop()方法,但最好不要用它。虽然它确实可以停止一个正在运行的线程,但是这个方法是不安全的,而且是已被废弃的方法。在java中有以下3种方法可以终止正在运行的线程: 使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。 使用stop方法强行终止,但是不推荐这个方法,因为stop和suspend及resume一样都是过期作废的方法。 使用interrupt

2020-07-02 15:50:09 312

原创 谈谈你对Java线程之间通信方式的理解

多线程和并发,在平时开发中有些小伙伴用的不多,但是有些工作经验的面试中还是容易被问到的,故在之后几期先整理一些常见的多线程面试题供参考。通信方式 ①同步 ②while轮询的方式 ③wait/notify机制 ④管道通信 一,介绍本文总结我对于JAVA多线程中线程之间的通信方式的理解,主要以代码结合文字的方式来讨论线程间的通信,故摘抄了书中的一些示例代码。二,线程间的通信方式①同步这里讲的同步是指多个线程通过synchronized关键字这种方式来实

2020-06-22 14:29:08 205

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除