![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
文章平均质量分 96
备战面试
geekmice
我信命,但我不认命,我认为命运还是掌握自己手里比较好
展开
-
2023年郑州春招3年开发面试总结
InnoDB中,对于主键索引,只需要走一遍主键索引的查询就能在叶子节点拿到数据。而对于普通索引,叶子节点不存储行记录,无法直接定位行记录,需要扫描两次索引树,先定位主键值,通过主键索引找到行记录,再定位行记录。概念:索引下推是把本应该在server层进行筛选的条件,下推到存储引擎层来进行筛选判断,这样能有效减少回表。举例说明:这条语句从最左匹配原则上来说是不符合的,原因在于只有name用的索引,但是age并没有用到。原创 2023-03-12 23:24:16 · 559 阅读 · 0 评论 -
八股文之jdk源码分析
通过加号拼接字符串分析string字符串我们一般都是字面量赋值形式,声明的变量值放在常量池,一般字符串拼接,通过+形式,其实这是jdk做了优化,并不是表面看到连接符,比如说现在字符串a,字符串b,通过反编译对应字节码文件,加号变成 ,append方法,String 是不可变的对象(final), 因此在每次对 String 类型进行改变的时候其实都等同于在堆中生成了一个新的 String 对象,然后将指针指向新的 String 对象,这样不仅效率低下,而且大量浪费有限的内存空间,所以经常改变内容的字符串最好原创 2022-12-05 03:01:14 · 726 阅读 · 0 评论 -
八股文之算法
注意几种情况将Q的value和next赋值给P,意味着P和Q同时指向Q的下一个节点将Q赋值给P.NEXT,也就是说P的NEXT存放Q,P的下一个节点为Q同时,P与T连接中断Q的下一个节点赋值给P,也就是将T复制而给P,也就是说T和P的value和next值相同,P和T同时指向 T的下一个元素。链表基础节点类链表类客户端测试1 从尾到头打印链表方案一:非递归listNode 是链表,只能从头遍历到尾,但是输出却要求从尾到头,这是典型的"先进后出",我们可以想到栈!ArrayList 中有个方法是原创 2022-12-05 02:59:46 · 1356 阅读 · 1 评论 -
八股文之设计原则
第1章 单一职责原则单一职责原则的英文名称是Single Responsibility Principle,简称是SRP。这个设计原则备受争议,只要你想和别人争执、怄气或者是吵架,这个原则是屡试不爽的。如果你是老大,看到一个接口或类是这样或那样设计的,你就问一句:“你设计的类符合SRP原则吗?”保准对方立马“萎缩”掉,而且还一脸崇拜地看着你,心想:“老大确实英明”。这个原则存在争议之处在哪里呢?就是对职责的定义,什么是类的职责,以及怎么划分类的职责。我们先举个例子来说明什么是单一职责原则。只要做过项目,肯定原创 2022-12-05 02:57:59 · 553 阅读 · 0 评论 -
mysql之SQL练习
2 查询平均成绩大于60的学生学号和平均成绩3 查询本月生日的学生备注:关于date_format方法说明4 查询课程’0001’分数小于60,分数降序排列学生信息5 查询不同老师所教不同课程平均分从高到低显示6 查询课程名称是 数学,并且分数高于60 的学生姓名和分数7 查询任何一门课程成绩在70分以上的姓名、课程名称和分数8 查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩9 查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩10 查询课程原创 2022-12-05 02:50:27 · 4922 阅读 · 0 评论 -
八股文之设计模式
定义一组算法,将每个算法都封装起来,并且使它们之间可以互换。是不是有点抽象,举个通俗易懂例子孙权看刘备有雄起之意,杀是不能杀了,那会惹天下人唾弃,就想个招儿收拾他一下,那有什么办法呢?孙权有个妹妹——孙尚香,准备招刘备做女婿,然后孙权想办法把刘备软禁起来,孙权的想法还是很单纯的嘛,就是不让你刘备回西川,然后我东吴想干啥就干啥,夺荆州,吞西川也不是不可能的。...原创 2022-08-30 20:12:51 · 892 阅读 · 0 评论 -
八股文之git
项目开发中git常用指令汇总。原创 2022-08-24 07:46:44 · 1022 阅读 · 0 评论 -
八股文之Oracle
plsql连接oracle服务器默认情况下scott用户只有四张表用户管理创建用户账户查看用户账户oracle的概要资源模式表空间权限管理DDL用于定义数据库的结构,比如创建,修改或者删除数据库对象,如下操作DML用于查询和修改数据记录,包括如下操作其中select是sql语言的基础,最为重要DCL用来控制数据库访问,包括如下操作语法:;选择全部列选择特定的列算数运算符操作符优先级使用括号定义空值空值是无效的,未指定的,未知的或者不可预知的值空值不是空格或者0空值在数学运算中的使用原创 2022-08-24 07:45:22 · 1337 阅读 · 0 评论 -
八股文之并发编程
在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在 Java 中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是一些很耗资源的对象创建和销毁,这就是”池化资源”技术产生的原因。线程池顾名思义就是事先创建若干个可执行的线程放入一个池(容器)中,需要的时候从池中获取线程不用自行创建,使用完毕不需要销毁线程而是放回池中,从而减少创建和销毁线程对象的开销。...原创 2022-08-11 03:19:50 · 355 阅读 · 0 评论 -
八股文之springcloud
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、智能路由、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。原创 2022-08-11 03:18:54 · 1119 阅读 · 1 评论 -
八股文之spring
一个轻量级Java开发框架,解决企业级应用开发的复杂性,即简化Java开发。原创 2022-08-11 03:17:17 · 3015 阅读 · 0 评论 -
八股文之springboot
Spring Profiles 允许用户根据配置文件(dev,test,prod 等)来注册 bean。因此,当应用程序在开发中运行时,只有某些 bean 可以加载,而在 PRODUCTION中,某些其他 bean 可以加载。假设我们的要求是 Swagger 文档仅适用于 QA 环境,并且禁用所有其他文档。这可以使用配置文件来完成。Spring Boot 使得使用配置文件非常简单。...原创 2022-08-11 03:15:38 · 3069 阅读 · 0 评论 -
八股文之mybatis
通过注解绑定,就是在接口的方法上面加上 @Select、@Update等注解,里面包含Sql语句来绑定;通过xml里面写SQL来绑定, 在这种情况下,要指定xml映射文件里面的namespace必须为接口的全路径名。当Sql语句比较简单时候,用注解绑定, 当SQL语句比较复杂时候,用xml绑定,一般用xml绑定的比较多。符号小于小于等于大于大于等于和单引号双引号原符号=&’"替换符号=&'"...原创 2022-08-09 22:17:26 · 1514 阅读 · 4 评论 -
八股文之jvm
实现通过类的权限定名获取该类的二进制字节流的代码块叫做类加载器。启动类加载器(Bootstrap ClassLoader)用来加载java核心类库,无法被java程序直接引用。扩展类加载器(extensions class loader):它用来加载 Java 的扩展库。Java 虚拟机的实现会提供一个扩展库目录。该类加载器在此目录里面查找并加载 Java 类。系统类加载器(system class loader):它根据 Java 应用的类路径(CLASSPATH)来加载 Java 类。......原创 2022-08-09 21:26:27 · 2877 阅读 · 0 评论 -
八股文之redis
Redis(Remote Dictionary Server) 是开源的高性能非关系型键值对数据库,可以存储键和五种不同类型的值之间的映射,键类型只能是字符串,值支持五种数据类型:,,,,;和传统的管系统数据库不同redis基于内存处理的,读写速度非常快,故而redis常常用来作为缓存,分布式锁,事务,持久化机制,多种集群方案。基本操作字符串 String列表 List无序集合 SET散列表 HASH有序集合 ZSET为什么使用redis,或者说为什么用缓存主要从“高性能”和“高并发原创 2022-08-09 21:25:22 · 1072 阅读 · 0 评论 -
八股文之mysql
聚簇索引:将数据存储与索引放到了一块,找到索引也就找到了数据非聚簇索引:将数据存储于索引分开结构,索引结构的叶子节点指向了数据的对应行,myisam 通过 key_buffer 把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在 key buffer 命中时,速度慢的原因。.........原创 2022-08-09 21:24:18 · 923 阅读 · 0 评论 -
八股文之java基础知识
不是,String类是final类,也即意味着String类不能被继承,并且它的成员方法都默认为final方法。在Java中,被final修饰的类是不允许被继承的,并且该类中的成员方法都默认为final方法String类其实是通过char数组来保存字符串的String对象一旦被创建就是固定不变的了,对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象使用字符串常量池**。**每当我们创建字符串常量时,JVM会首先检查字符串常量池,如果该字符串已经存在常量池中,那么就直接返原创 2022-07-17 11:14:23 · 458 阅读 · 0 评论 -
八股文之Java集合容器
HashMap在put的时候,插入的元素超过了容量(由负载因子决定)的范围就会触发扩容操作,就是rehash,这个会重新将原数组的内容重新hash到新的扩容数组中,在多线程的环境下,存在同时其他的元素也在进行put操作,如果hash值相同,可能出现同时在同一数组下用链表表示,造成闭环,导致在get时会出现死循环,所以HashMap是线程不安全的。ArrayList底层以数组实现,是一种随机访问模式,通过下标索引定位数据,所以查找非常快因此,ArrayList比较适合顺序添加、随机访问的场景。........原创 2022-07-17 11:07:45 · 579 阅读 · 0 评论 -
八股文之linux常用指令
test.txt文件中每一行之前有行号,无法使用sort和uniq进行去重,可以使用-f参数忽略每一行的第一个字段,这样就可以忽略每一行之前的行号,对每一行之后的内容进行去重处理。对于这种情况也可以使用awk命令工具进行处理去除第一列的行号,然后通过管道符丢给sort和uniq命令处理,后续会继续更新awk等重要的文本处理工具。使用-d,–repeated只显示重复的行并且重复的行只显示一次。只能对有序的文本行进行有效去重,所以常与sort命令结合使用。以行为单位,进行行与行之间的字符串比较并进行去重。..原创 2022-07-17 11:05:13 · 2733 阅读 · 0 评论