面试
文章平均质量分 86
陈三千
过好生活。
展开
-
面试相关问题
1. 对数据结构的理解答:数据结构是计算机存储、组织数据的方式。数据结构有三大要素:(1)数据的逻辑结构,指数据元素之间的逻辑关系,从逻辑关系上描述数据。它分为线性结构和非线性结构。(2)数据的存储结构,指数据结构在计算机中的表示(或映像),也称物理结构。它包括数据元素的表示和关系的表示。主要有:顺序存储、链式存储、索引存储和散列存储。(3)数据的运算,指施加在数据上的运算包括运算的定义和实现。运算的定义是针对逻辑结构的,运算的实现是针对存储结构的。2. 链表和数组的区别答:数组是有下标索引原创 2021-03-11 01:43:15 · 368 阅读 · 0 评论 -
如何查看MySql的sql语句性能
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看 SQL 语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where ...]例如:explain select * from news;输出:±—±------------±------±------±------------------±--------±--------±-转载 2021-03-11 00:52:52 · 594 阅读 · 0 评论 -
MySQL 事务机制,中高级开发面试必问
MySQL 事务,是我们去面试中高级开发经常会问到的问题,很多同学虽然经常使用 MySQL,SQL语句写得很6,但是很多时候,被问到这些问题的时候,总是不知从何说起,下面我们来系统的学习一下什么是 MySQL事务,让我们面对面试官的时候能够侃侃而谈,避免一问三不知的尴尬。事务:事务是数据处理的最小操作单元,是一组不可在分割的操作集合,这个操作单元里的一系列操作要么都成功,要么都失败。最为典型的例子就是转账了。情景再现:同学A给同学B转了1000块钱,那么此时A的账户上肯会-1000,而B的账户.转载 2021-03-10 19:29:27 · 221 阅读 · 0 评论 -
JAVA里sort()方法的使用与原理解析
Arrays.sort和Collections.sort实现原理解析1、使用排序sort()是Java中用来排序的一个方法,在我们专心学习各种经典排序算法的时候,其实在代码中一个sort()就可以解决,并且时间复杂度和空间复杂度相对都不会过高。其实sort()不光可以对数组进行排序,基本数据类型的数组都可以,并且可以实现对对象数组的排序.接下来介绍一下用法.1. 基本数据类型(1)数字类型:int[] a = {1, 3, 4, 67, 78, 9, 90, 6, 3, 2};Array转载 2021-03-09 17:24:07 · 8025 阅读 · 1 评论 -
关于MySQL什么时候使用索引 & 什么情况下应不建或少建索引
一,什么情况下使用索引1. 表的主关键字自动建立唯一索引2. 表的字段唯一约束ORACLE利用索引来保证数据的完整性3. 直接条件查询的字段在SQL中用于条件约束的字段如zl_yhjbqk(用户基本情况)中的qc_bh(区册编号)select * from zl_yhjbqk where qc_bh=’7001’4. 查询中与其它表关联的字段字段常常建立了外键关系如zl_ydcf(用电成份)中的jldb_bh(计量点表编号)select * from zl_ydcf a,zl_yhd转载 2021-03-09 15:45:47 · 3200 阅读 · 0 评论 -
深入底层剖析Mysql各种锁机制
乐观锁乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(跟上一次的版本号比较,如果一样则更新),如果失败则要重复读-比较-写的操作。java 中的乐观锁基本都是通过 CAS 操作实现的,CAS 是一种更新的原子操作,比较当前值跟传入值是否一样,一样则更新,否则失败。悲观锁悲观锁是就是悲观思想,即认为写多,遇到并发写的可能性高,每次去拿数据转载 2021-03-09 00:55:01 · 2462 阅读 · 0 评论 -
MyBatis中#{}和${}的作用与区别
在mybatis中#和$的主要区别是:#传入的参数在SQL中显示为字符串,#方式能够很大程度防止sql注入;$传入的参数在SqL中直接显示为传入的值,$方式无法防止Sql注入。1、传入的参数在SQL中显示不同#{} 将传入的参数(数据)都当成是一个字符串,在SQL中显示为字符串,会对自动传入的数据加一个双引号。「对自动传入的数据加一个双引号」例:使用以下SQL语句select id,name from student where id =#{id};//当我们传递的参数id为 "1" 时,上原创 2021-03-07 23:41:54 · 6305 阅读 · 3 评论 -
MySQL 分页查询
文章目录一、limit 分页公式、总页数公式1 limit 分页公式2 总页数公式二 、Mysql的三种分页方法1 limit m,n分页语句2 limit m语句三、 查询优化2 使用 id 限定优化(前提:id是连续递增,删除过记录不符合)3 使用临时表优化四、关于数据表的id说明一、limit 分页公式、总页数公式1 limit 分页公式(1)limit分页公式:curPage是当前第几页;pageSize是一页多少条记录limit (curPage-1)*pageSize,pageSize转载 2021-03-03 17:33:17 · 2703 阅读 · 1 评论 -
JAVA常用的5种线程池
1、newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。这种类型的线程池特点是:工作线程的创建数量几乎没有限制(其实也有限制的,数目为Interger. MAX_VALUE), 这样可灵活的往线程池中添加线程。如果长时间没有往线程池中提交任务,即如果工作线程空闲了指定的时间(默认为1分钟),则该工作线程将自动终止。终止后,如果你又提交了新的任务,则线程池重新创建一个工作线程。在使用CachedThreadPool时,一原创 2020-12-31 00:47:31 · 585 阅读 · 0 评论